Commit graph

193 commits

Author SHA1 Message Date
Felix Fietkau
44cd20b802 build: rework the package/install step - collect package install lists during package/compile, then install all packages at once
SVN-Revision: 33631
2012-10-06 16:01:06 +00:00
Felix Fietkau
b086475e1e build: ensure that package/host-build build system code does not run in parallel, fixes rare spurious parallel build failures
SVN-Revision: 33445
2012-09-17 11:17:26 +00:00
Felix Fietkau
c4198ce48d build: move the -j flag to package.mk instead of grabbing it from makeflags, otherwise it occasionally gets omitted on full builds
SVN-Revision: 33422
2012-09-15 12:16:14 +00:00
Felix Fietkau
be6f437649 build: add a config option for passing the top-level make jobserver to packages that have parallel build enabled, significantly improves parallelization and gets rid of CPU overcommit during intra-package parallel builds
SVN-Revision: 33414
2012-09-15 10:21:24 +00:00
John Crispin
584bc13d38 use autoreconf hook instead of manual call
SVN-Revision: 32837
2012-07-25 10:34:06 +00:00
Felix Fietkau
cf788fc731 build: add a config option for choosing the prefered standard c++ library and add uclibc++.mk to make this easy to handle in packages
SVN-Revision: 32369
2012-06-14 20:26:04 +00:00
Felix Fietkau
3051de8701 build: add a variable for injecting config variable dependencies for the .prepared stamp
SVN-Revision: 32368
2012-06-14 20:26:00 +00:00
Felix Fietkau
16a34b222a package.mk: unexport the QUIET variable, it affects some packages like xapian-bindings
SVN-Revision: 32196
2012-06-11 15:07:51 +00:00
Felix Fietkau
031990cf95 build: generate a list of provided libraries for each ipkg file (includes provided libraries from packages that the exporting package depends on)
SVN-Revision: 32172
2012-06-10 20:27:41 +00:00
Felix Fietkau
edb862e8ec build: improve reliability of PKG_CONFIG_DEPENDS, remove old .configured_* stamps before creating a new one
SVN-Revision: 28770
2011-11-05 19:09:40 +00:00
Felix Fietkau
f63daa85a2 fix a small logic error in package download
SVN-Revision: 28395
2011-10-09 16:54:03 +00:00
Felix Fietkau
874622d004 build system: add a feature that allows you to pull sources from a git tree instead of the usual tarball
SVN-Revision: 28394
2011-10-09 16:33:59 +00:00
Felix Fietkau
1b8dd6ed1c build system: add support for download-time make hooks
SVN-Revision: 28322
2011-09-30 11:12:13 +00:00
Felix Fietkau
b568a64f8c add support for md5sum checks for mirrored tarballs of packages with version control source urls
SVN-Revision: 26260
2011-03-21 23:02:06 +00:00
Felix Fietkau
73c1dd9473 build: move the CCACHE_DIR to the build targets so that it doesn't interfere with a host ccache setup
SVN-Revision: 26181
2011-03-15 19:58:32 +00:00
Felix Fietkau
de4fdd0ce6 add a stamp that can forcibly disable autorebuild for a specific package - useful for testing changes to packages with extremely long recompilation times
SVN-Revision: 25838
2011-03-03 00:17:08 +00:00
Felix Fietkau
7e4a29fbe2 use := instead of = for PKG_CONFIG_PATH to prevent recursion
SVN-Revision: 25388
2011-02-06 16:04:33 +00:00
Felix Fietkau
e8b193f10b allow packages to override/extend PKG_CONFIG_PATH
SVN-Revision: 25386
2011-02-06 15:18:30 +00:00
Jo-Philipp Wich
dbf8d9c516 - implement hooks for hostbuilds - use host build hooks to implement fixups for host build - move separator declaration to rules.mk
SVN-Revision: 24551
2010-12-13 19:04:33 +00:00
Michael Büsch
995cedb319 InstallDev: Move the "find" out of the lock critical section.
SVN-Revision: 23858
2010-11-04 12:42:37 +00:00
Michael Büsch
e5fc77edd9 Lock copying of directory trees to the staging dir with the "staging-dir" lock. This lock probably has to be taken elsewhere, too.
SVN-Revision: 23857
2010-11-04 12:28:55 +00:00
Michael Büsch
dc7a68165d Fix typo
SVN-Revision: 23482
2010-10-16 18:46:22 +00:00
Michael Büsch
d4807cf557 Support force-disabling per-package parallel build with {PKG,HOST}_BUILD_PARALLEL:=0
SVN-Revision: 23480
2010-10-16 18:42:58 +00:00
Michael Büsch
fde498904f Add an option to default the default build rule to parallel build.
SVN-Revision: 22737
2010-08-20 14:48:59 +00:00
Michael Büsch
7ed7784f59 Support parallel build of certain packages
SVN-Revision: 22696
2010-08-18 13:57:58 +00:00
Lars-Peter Clausen
b4a1337cf9 Add build variants support to InstallDev
Before building a build variant would have removed the staging files installed
by the previous build variant from the same makefile.

SVN-Revision: 22668
2010-08-16 09:45:21 +00:00
Felix Fietkau
6117c04c94 remove linux 2.4 specific build system code
SVN-Revision: 21951
2010-06-26 20:42:38 +00:00
Felix Fietkau
15fecc9e6c remove support for DEBUG_DIR, it has lost its purpose since STAGING_DIR_ROOT was added
SVN-Revision: 19849
2010-02-24 23:43:05 +00:00
Felix Fietkau
79fcadc146 hostapd: fix rebuild checks (#6210)
SVN-Revision: 18497
2009-11-23 17:12:54 +00:00
Felix Fietkau
94cdcbde6d add experimental support for a new menuconfig submenu "Package features". allows selection between multiple packages providing the same feature, which affects dependencies of other packages. will be used e.g. for choosing between DirectFB and X.org for libraries like GTK2
SVN-Revision: 18056
2009-10-17 22:11:21 +00:00
Felix Fietkau
5af113eb7c add support for build system overlays that alter package build instructions currently unused, will probably be managed by the feeds system later
SVN-Revision: 17445
2009-08-31 01:11:25 +00:00
Ralph Hempel
6f29703625 add dist and distcheck target (to create new source balls)
SVN-Revision: 16230
2009-05-31 12:01:05 +00:00
Ralph Hempel
3dc92527a3 add package source path override - use external source tree instead of source ball - the external package source tree will be included as symlink - make package/<name>/clean will delete the symlink instead of whole source tree - usefull in conjunction with external SCM like ClearCase - package-version-override.mk has to be included before package.mk
SVN-Revision: 16227
2009-05-31 11:35:13 +00:00
Nicolas Thill
f0a3d4d501 add missing bits from [15451]
SVN-Revision: 15453
2009-04-27 16:02:21 +00:00
Nicolas Thill
7658ef1316 introduce a generic PKG_CONFIG_DEPENDS for packages that need to be reconfigured when certain CONFIG options changed, rename PKG_BUILD_DEPEND to PKG_BUILD_DEPENDS
SVN-Revision: 15451
2009-04-27 15:53:00 +00:00
Felix Fietkau
63129f9b4c clean up automake/pkg-config handling, move separate host/package variable exports to templates, fix automake path for host builds
SVN-Revision: 15339
2009-04-22 22:05:55 +00:00
Felix Fietkau
729e0fa4d1 move pkg config stuff to per-target exports to prevent interference with host builds
SVN-Revision: 15299
2009-04-20 18:56:57 +00:00
Felix Fietkau
34939cad39 get rid of $Id$ - it has never helped us and it has broken too many patches ;)
SVN-Revision: 15242
2009-04-17 14:09:46 +00:00
Felix Fietkau
7ec4ad271e add PKG_HOST_ONLY variable to prevent target builds
SVN-Revision: 14906
2009-03-17 02:37:04 +00:00
Felix Fietkau
ddcfaeb1e5 move host build in packages into a separate namespace: 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
2009-03-17 02:20:34 +00:00
Felix Fietkau
e4a5d86b54 fix the target-local CONFIG_SITE export. apparently make can't do more than one of them in a single line
SVN-Revision: 14863
2009-03-13 16:16:54 +00:00
Felix Fietkau
76683dc7b2 move the CONFIG_SITE export to target-local exports
SVN-Revision: 14851
2009-03-12 13:57:56 +00:00
Felix Fietkau
b6f0cb5366 prepend $(STAGING_DIR)/host to the PATH only in target-package stampfile targets, should fix usage of cross tools with host builds
SVN-Revision: 14800
2009-03-09 01:15:59 +00:00
Felix Fietkau
fb4a318970 fix the host vs native stampfile dependencies to improve quilt support
SVN-Revision: 14629
2009-02-22 23:54:05 +00:00
Felix Fietkau
aa0778f77e allow concurrent use of host-build.mk and package.mk as well as their templates
SVN-Revision: 14621
2009-02-22 18:10:05 +00:00
Felix Fietkau
6ccc1c8e3c fix typo
SVN-Revision: 14609
2009-02-22 04:36:56 +00:00
Felix Fietkau
eb1c4db039 add support for an optional staging directory for debug binaries
SVN-Revision: 14018
2009-01-13 03:21:25 +00:00
Nicolas Thill
a3edea1b91 add support for alternative C libraries (currently only glibc/eglibc) other (related) changes: - kernel headers are now installed using "make headers_install" on 2.6 - target names now contain an openwrt "vendor" tag (e.g. mips-openwrt-linux-gnu) - build directory names now contain gcc/libc name/version - default cpu for x86 is now i486 (required to build glibc/eglibc)
SVN-Revision: 13931
2009-01-08 01:49:11 +00:00
Felix Fietkau
cb73e4ad91 fix inotify detection for linux 2.4 (fixes glib2 and packages that depend on it on brcm-2.4)
SVN-Revision: 12896
2008-10-08 12:07:14 +00:00
Lars-Peter Clausen
3601e8b9bb oops, previous commit was broken. remove wrong line break.
SVN-Revision: 12570
2008-09-11 16:17:28 +00:00
Lars-Peter Clausen
013d074603 Add InstallDev/(Pre|Post) hooks.
SVN-Revision: 12569
2008-09-11 16:13:14 +00:00
Felix Fietkau
3b937f85e8 add default Build/Install template, which is activated by setting PKG_INSTALL=1
SVN-Revision: 12512
2008-09-03 13:19:50 +00:00
Felix Fietkau
5719247ae3 add an extra build step Build/Install which allows you to run a make install target after the post-compile hooks have run - will be necessary for some libtool dependent stuff
SVN-Revision: 12452
2008-09-01 11:03:58 +00:00
Felix Fietkau
291e775fcd allow packages to forcibly disable the svn/git mirror downloading attempt by setting PKG_SOURCE_MIRROR:=0 (#3815)
SVN-Revision: 12034
2008-07-31 02:43:33 +00:00
Felix Fietkau
4c665e6ca4 large improvement for parallel builds. works without V=99 now and without warnings. tested with -j on an 2x dual core opteron machine
SVN-Revision: 11414
2008-06-09 15:38:45 +00:00
Felix Fietkau
82572cf767 revert ARM to oabi by default, add some eabi patches for fixing up the toolchain, which unfortunately break eabi userland, but are IMHO a necessary basis for further eabi fixes
SVN-Revision: 10458
2008-02-14 14:31:31 +00:00
Felix Fietkau
f75b9f6815 fix packages that use -f on other build system makefiles
SVN-Revision: 10088
2008-01-03 02:12:46 +00:00
Andy Boyett
6343c3be59 expunge find GNUism
SVN-Revision: 9955
2007-12-27 11:31:27 +00:00
Felix Fietkau
5c2991d8bc add improved autotools fixups
SVN-Revision: 9942
2007-12-27 02:11:07 +00:00
Felix Fietkau
28922775b6 add $(STAGING_DIR)/host, which contains target specific, but host executable files
SVN-Revision: 9939
2007-12-27 02:10:54 +00:00
Felix Fietkau
3de5e1d29a clean up after staging packages
SVN-Revision: 9909
2007-12-25 02:19:48 +00:00
Felix Fietkau
957103c337 add automatic file tracking and uninstallation for files installed in $(STAGING_DIR) and $(STAGING_DIR_HOST)
SVN-Revision: 9905
2007-12-25 01:39:15 +00:00
Felix Fietkau
3c228ee88f add a second parameter to InstallDev/UninstallDev for specifying the path to STAGING_DIR_HOST
SVN-Revision: 9853
2007-12-23 00:41:40 +00:00
John Crispin
a49f06f5e7 fixed copy paste error
SVN-Revision: 9792
2007-12-17 22:24:40 +00:00
Felix Fietkau
407b75436d fix build issues that happen when the staging dir is cleared and the build directories stay
SVN-Revision: 9588
2007-11-20 22:43:38 +00:00
Felix Fietkau
87d0b29540 better scope handling for the configured stamp
SVN-Revision: 9566
2007-11-16 03:48:43 +00:00
Felix Fietkau
e66a211078 fix default downloads from svn
SVN-Revision: 9471
2007-10-31 22:37:56 +00:00
John Crispin
9f73ab51f3 refreshed madwifi patches
SVN-Revision: 9380
2007-10-20 19:13:53 +00:00
John Crispin
7558f0281f DESCRIPTION:= is obselete, so complain if it is used and use TITLE if no description is set
SVN-Revision: 9307
2007-10-14 04:49:05 +00:00
John Crispin
5a4b6b5f4e changed pkg_install_files so one can specify the folder to install from
SVN-Revision: 9192
2007-10-08 19:49:11 +00:00
John Crispin
33ecac1f24 added a function, that packages can call to make installing files/folders much cleaner and easier
SVN-Revision: 9171
2007-10-07 01:55:03 +00:00
Felix Fietkau
e2f7a60283 fixes for refresh/update handling
SVN-Revision: 9063
2007-09-29 04:29:11 +00:00
Felix Fietkau
97b6135462 add a packaging method that installs files into a subdirectory of bin/ instead of an ipkg
SVN-Revision: 9060
2007-09-29 01:21:56 +00:00
Felix Fietkau
dbeb0fad24 Refactor downloading code into download.mk Support multiple file downloads Support svn downloads
SVN-Revision: 9057
2007-09-29 00:05:48 +00:00
Felix Fietkau
969ac7459e add $(STAGING_DIR) as argument to the InstallDev template and update packages accordingly - this way we can reuse InstallDev to automatically generate UninstallDev or create -dev packages
SVN-Revision: 9052
2007-09-28 01:45:11 +00:00
Felix Fietkau
800ef0f56c some minor fixes, cleanups, package build abstraction
SVN-Revision: 9051
2007-09-28 01:23:56 +00:00
Felix Fietkau
e554dafa93 fix spontaneous rebuilds caused by make package/<name>/update with quilt
SVN-Revision: 8879
2007-09-20 16:17:50 +00:00
Nicolas Thill
9f6bd2c07b remove uneeded stuff after python changes in [8639]
SVN-Revision: 8640
2007-09-06 02:57:06 +00:00
Nicolas Thill
e5e03321f9 tweak Build/Compile/PyMod: add CPPFLAGS, allow caller to override any of the default *FLAGS, indent
SVN-Revision: 8590
2007-09-03 08:44:08 +00:00
Nicolas Thill
6a6fa5a4ab provide default PKG_BUILD_DIR for packages missing a PKG_VERSION
SVN-Revision: 8583
2007-09-03 07:51:56 +00:00
Nicolas Thill
6a8ab4c0be fix .dep_files exclusion in rdep calls
SVN-Revision: 8567
2007-09-01 05:20:21 +00:00
Felix Fietkau
5f748a6c24 clean up recursive dependency handling, use timestamp.pl again, because it saves memory and execution time
SVN-Revision: 8558
2007-08-30 21:12:39 +00:00
Florian Fainelli
39cbeec7b2 Add a PyMod template for python related modules
SVN-Revision: 8522
2007-08-28 12:41:39 +00:00
Nicolas Thill
4b23cac27b replace xargs commands with $(XARGS)
SVN-Revision: 8478
2007-08-24 12:10:14 +00:00
Nicolas Thill
b4318f53f9 rename libtool macros, revert [8461], make install prefix configurable in libtool_fixup_libdir
SVN-Revision: 8462
2007-08-22 16:15:00 +00:00
Florian Fainelli
c994e41757 Make the libtool fix more dynamic
SVN-Revision: 8461
2007-08-22 09:13:42 +00:00
Nicolas Thill
5440728b06 add 2 helper macros to deal with libtool madness
SVN-Revision: 8457
2007-08-21 20:51:46 +00:00
Nicolas Thill
ba05b57573 rename 'stampfiles' directory to 'stamp'
SVN-Revision: 8455
2007-08-21 18:07:55 +00:00
Felix Fietkau
c6bc77ea36 build system cleanup/restructuring as described in http://lists.openwrt.org/pipermail/openwrt-devel/2007-August/001159.html
SVN-Revision: 8362
2007-08-07 00:04:25 +00:00
Felix Fietkau
23f0017829 fix a rebuild bug related to quilt
SVN-Revision: 8255
2007-07-30 23:52:17 +00:00
Felix Fietkau
9bf7beae60 speed up the prepare step a bit
SVN-Revision: 8245
2007-07-30 21:47:26 +00:00
Felix Fietkau
d7f2cb1642 next round of cleanup, convert target/ - make -j works now ;)
SVN-Revision: 8242
2007-07-30 21:14:08 +00:00
Felix Fietkau
a7b635f075 more cleanup
SVN-Revision: 8238
2007-07-30 18:39:20 +00:00
Felix Fietkau
ca0140018b only apply recursive deps if DUMP is unset
SVN-Revision: 7572
2007-06-11 17:19:43 +00:00
Felix Fietkau
cc690d782c Add quilt integration for packages
make package/<package>-prepare QUILT=1 will apply all patches using quilt
Autorebuild will be disabled, so that you can edit all patches in the build dir.
When you're done editing patches and everything works, you can call:
make package/<package>-refresh
That will copy the updated patches from quilt into package/<package>/patches,
and remove all old patches.
Before the patches are overwritten, the correct order of the patches is verified
('cat series' is compared against 'sort series').

SVN-Revision: 7471
2007-06-03 06:16:08 +00:00
Felix Fietkau
30b08e0bb4 improve metadata scanning time
SVN-Revision: 7152
2007-05-10 00:23:48 +00:00
Felix Fietkau
56cdcf23a3 fix recursive dependencies on build directories - should lead to fewer spontaneous rebuilds
SVN-Revision: 7151
2007-05-09 22:47:01 +00:00
Felix Fietkau
d96d98a88d Small bugfix for dependency handling - mostly for base-files and symlinks
SVN-Revision: 7058
2007-04-26 18:04:16 +00:00
Felix Fietkau
c7f299dfe5 add missing dependencies for autorebuild
SVN-Revision: 7022
2007-04-21 09:21:51 +00:00
Felix Fietkau
29e42ab21d hide some junk in non-verbose mode
SVN-Revision: 6979
2007-04-16 23:51:22 +00:00