aboutsummaryrefslogtreecommitdiffstats
path: root/include/subdir.mk
Commit message (Collapse)AuthorAgeFilesLines
* build: allow package to be built for all variantsEneas U de Queiroz2021-11-151-1/+1
| | | | | | | | | | | | This allows a package to be rebuilt for all different VARIANTs. To do so, set VARIANT=*. The wpa-cli package is not getting built after changes made by 19aae94 [build: avoid rebuilds of unset VARIANT packages], because wpa-cli is only built when compiling a variant that includes supplicant support, and the first selected variant may not build it. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: add SUBDIR_MAKE_DEBUG variable to make it easier to debug package ↵Felix Fietkau2021-11-041-1/+1
| | | | | | makefiles Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: avoid rebuilds of unset VARIANT packagesEneas U de Queiroz2021-11-011-4/+6
| | | | | | | | | | | If a Makefile defines some packages with VARIANT set, and others without it, the latter will be built once for every different VARIANT set, each build trumping the previous one. Avoid rebuilds by only building unnamed variant packages when the first variant is built. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: use SPDX license tagsPaul Spooren2021-02-051-5/+2
| | | | | | | | | The license folder is a core part of OpenWrt and all GPL-2.0 licensed. Use SPDX license tags to allow machines to check licenses. Signed-off-by: Paul Spooren <mail@aparcar.org> [rebase, keep some Copyright lines, sharpen commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* include/subdir: on build failure always print errorKarel Kočí2020-11-271-3/+3
| | | | | | | | | | | It is impossible to locate package that failed the build just from log once more build is run in parallel (that is more than one make job). The only way is to scout log files for failed package going back trough log. This change makes it so error is printed for package that failed every time. Signed-off-by: Karel Kočí <karel.koci@nic.cz>
* build: remove GNU time dependencyJo-Philipp Wich2018-08-051-1/+1
| | | | | | | | | | Replace the GNU time program invocation with a simple Perl script reporting the timing values. Since we require Perl anyway for the build system, we can as well use that instead of requiring a random GNU utility rarely installed by default. Fixes: ff6e62b288 ("build: log time taken by each packages/steps") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: add busybox support to `time` prereq-checkAndy Boyett2018-06-181-1/+1
| | | | | | | | | | | | | | Busybox time supports the GNU time '-f' syntax used by the build time logging implemented in ff6e62b288c, however the prerequisite check added only works with GNU time installed as `time` or `gtime`. As busybox is a multicall binary, the name of the symlink setup by SetupHostCommand also must be changed from `gtime` to `time` to fix the value of argv[0]. This causes a number of shells (including bash) to use their builtin impelementation of time, so the sole invocation has been changed to use `env time` to use the value found on the $PATH. Signed-off-by: Andy Boyett <agb@agb.io>
* build: log time taken by each packages/stepsEtienne Champetier2018-05-071-0/+1
| | | | | | | | | | The idea is to easily get the list of packages taking the most time to build, and see if we can improve them v1: Use SetupHostCommand as recommended by John v2: add space after 'time:', remove useless /usr/bin/time from SetupHostCommand Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
* build: allow building an individual subdir without dependencies using NO_DEPS=1Felix Fietkau2017-02-211-2/+2
| | | | | | | QUILT=1 had the same effect, but it is sometimes useful to be able to do this without quilt Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: make <subdir>/install opt-in, use it for target/ onlyFelix Fietkau2017-02-091-2/+2
| | | | | | | Fixes buildbot errors on running make target/install or toolchain/install Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: fix CONFIG_AUTOREMOVE for packages with multiple variantsFelix Fietkau2017-01-221-1/+1
| | | | | | | | Calling the clean target removes all .ipk files and un-stages the package. Add a new target just for clearing the build dir and call that one instead of the full clean target Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: add support for automatically removing build dir contents during buildFelix Fietkau2017-01-181-3/+17
| | | | | | | | | This is used to save space on buildbot instances. If any part of a package needs to be rebuild, the whole package is rebuilt from scratch. Stamp files are preserved to allow dependency checks to work Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: define common subdir targets in rules.mkFelix Fietkau2017-01-181-1/+1
| | | | | | Reduce build system clutter and enable further rework Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: implement make check and make package/X/checkFelix Fietkau2016-12-171-1/+1
| | | | | | | | | | | | | | | | This is intended to be used for a wide array of package sanity checks. The first check that is implemented is for the hash of downloaded files. It checks: - Missing hash - Use of SHA256 instead of MD5 - dl/<file> hash not matching hash in makefile - deprecated MD5SUM variable The deprecated MD5SUM variable check is skipped for feeds/ until OpenWrt is updated as well Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: add logging for package host buildsFelix Fietkau2016-01-201-2/+18
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48417
* build: split BUILD_LOG logs per variantFelix Fietkau2016-01-201-2/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48415
* build: use a separate variable checking the subdir path (for host packages)Felix Fietkau2016-01-201-2/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48410
* build: move host build directories of package/* to build_dir/target-*/host/Felix Fietkau2016-01-201-2/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48400
* include: remove trailing whitespacesLuka Perkov2015-03-291-1/+1
| | | | | | Signed-off-by: Luka Perkov <luka@openwrt.org> SVN-Revision: 45127
* build: do not process built-in rules for make subdirsFelix Fietkau2014-10-221-2/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43016
* tools: fix stampfile dependency handling when the list of build dirs changes ↵Felix Fietkau2014-03-081-1/+1
| | | | | | | | (#15186) Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 39845
* log failed package buildsJohn Crispin2012-06-041-2/+5
| | | | SVN-Revision: 32050
* remove legacy package/foo-compile wrapper targets, people should be used to ↵Felix Fietkau2011-05-281-2/+0
| | | | | | the correct target names by now SVN-Revision: 27023
* make the build system a bit more silent without V=99Felix Fietkau2011-04-041-1/+1
| | | | SVN-Revision: 26460
* build: reduce the amount of generated make code for the initial prereq scan ↵Felix Fietkau2011-04-031-2/+7
| | | | | | - makes it about 20% faster SVN-Revision: 26436
* build: use a conditional @ sign before silenced targets instead of .SILENT - ↵Felix Fietkau2011-04-031-4/+2
| | | | | | makes prereq checks more than twice as fast SVN-Revision: 26435
* add configure as package targetRalph Hempel2010-10-051-1/+1
| | | | SVN-Revision: 23262
* fix build dependencies on packages with multiple variants but no selected ↵Felix Fietkau2010-09-201-1/+1
| | | | | | virtual packages SVN-Revision: 23102
* add a command for printing a cleaned up make target database - will be used ↵Felix Fietkau2010-09-011-5/+8
| | | | | | to analyze package dependencies at some point SVN-Revision: 22871
* build system: introduce a new feature called build variants. it allows ↵Felix Fietkau2009-11-101-1/+3
| | | | | | building a package multiple times in one pass with different build dirs, based on the same build settings. replaces templating hacks like the one used in the hostapd package SVN-Revision: 18357
* move the toolchain_install stampfile to the right place to fix spurious ↵Felix Fietkau2009-07-111-2/+2
| | | | | | missing toolchain errors after cleaning stuff SVN-Revision: 16776
* add dist and distcheck target (to create new source balls)Ralph Hempel2009-05-311-1/+1
| | | | SVN-Revision: 16230
* added BUILD_LOG_DIR variable, make clean will delete the ./logs dirRalph Hempel2009-05-281-2/+2
| | | | SVN-Revision: 16148
* stop build when an error occurs and when BUILDLOG is set (#5160)Florian Fainelli2009-05-261-1/+1
| | | | SVN-Revision: 16079
* add missing $(if) check for build loggingFelix Fietkau2009-04-241-1/+1
| | | | SVN-Revision: 15366
* add BUILD_LOG option to let the build system log all subdir make command ↵Felix Fietkau2009-04-241-1/+2
| | | | | | output to individual files (useful for debugging parallel builds) SVN-Revision: 15362
* add support for config options checking in top-level directory stampfilesFelix Fietkau2009-04-061-2/+2
| | | | SVN-Revision: 15112
* add makefile target alias package/<name>/host/<target> for host buildsFelix Fietkau2009-03-181-0/+1
| | | | SVN-Revision: 14944
* move host build in packages into a separate namespace: ↵Felix Fietkau2009-03-171-0/+5
| | | | | | package/<name>/host/<target> this allows dependencies between host and target packages, and saves unnecessary host builds for packages that contain both variants SVN-Revision: 14905
* some more build system cleanupFelix Fietkau2008-08-171-2/+1
| | | | SVN-Revision: 12329
* rework parallel building to get rid of some warnings and add back support ↵Felix Fietkau2008-08-161-1/+1
| | | | | | for parallelizing the kernel build fixes #3882 SVN-Revision: 12322
* fix make variable overriding for package makefiles on the command lineFelix Fietkau2008-08-061-1/+1
| | | | SVN-Revision: 12204
* large improvement for parallel builds. works without V=99 now and without ↵Felix Fietkau2008-06-091-2/+2
| | | | | | warnings. tested with -j on an 2x dual core opteron machine SVN-Revision: 11414
* add a flag "IGNORE_ERRORS", which can be used to ignore build errors in packagesFelix Fietkau2008-05-071-1/+2
| | | | SVN-Revision: 11059
* make aliases for package targets if the package directories are in further ↵Felix Fietkau2007-10-211-0/+6
| | | | | | subdirectories example: if there is a package/libs/foo/compile, then package/foo/compile will be an alias for it SVN-Revision: 9384
* major target cleanup. it is now possible to have subtargets that can ↵Felix Fietkau2007-09-081-2/+2
| | | | | | override many target settings, including arch - merge adm5120, adm5120eb. target profiles still need to be adapted for subtargets SVN-Revision: 8694
* fix a dependency bugFelix Fietkau2007-08-301-1/+1
| | | | SVN-Revision: 8561
* avoid rdep in the top level make process (subdir.mk) - it leaks too much ↵Felix Fietkau2007-08-291-7/+3
| | | | | | memory and increases the startup time for regular make commands. timestamp.pl is more lightweight here SVN-Revision: 8533
* rename 'stampfiles' directory to 'stamp'Nicolas Thill2007-08-211-1/+1
| | | | SVN-Revision: 8455
* build system cleanup/restructuring as described in ↵Felix Fietkau2007-08-071-1/+1
| | | | | | http://lists.openwrt.org/pipermail/openwrt-devel/2007-August/001159.html SVN-Revision: 8362