Timo Savola [Tue, 10 Jun 2008 10:27:49 +0000 (13:27 +0300)]
MATRIX_WRAP_*, MATRIX_SB2_* and MATRIX_FAKEROOT variables
the following variables may be set in component plug-files or in the
environment:
* MATRIX_WRAP_AUTOGEN,
* MATRIX_WRAP_CONFIGURE,
* MATRIX_WRAP_BUILD and
* MATRIX_WRAP_INSTALL replace CCTOOL_INSTALL and CCTOOL_BUILD. Their
values are prepended to commands used in the respective make target
invocation.
* MATRIX_SB2_TARGET enables Scratchbox 2 support. an appropriate sb2
invocation is appended to the MATRIX_WRAP_* variables.
* MATRIX_SB2_DISABLE can be used to disable sb2 invocation for some or
all make targets (see below).
* MATRIX_FAKEROOT enables fakeroot for some or all make targets
(see below).
MATRIX_SB2_DISABLE and MATRIX_FAKEROOT may contain a whitespace-separated
list of the following keywords:
* autogen
* configure
* build
* install
* all - same as specifying all of the above
Timo Savola [Wed, 4 Jun 2008 08:22:43 +0000 (11:22 +0300)]
config: Parse gives an error if file(s) not found
Parse(<pattern>, require=False) can be used to parse optional files.
Timo Savola [Fri, 30 May 2008 10:28:34 +0000 (13:28 +0300)]
config: rename parse as Parse
Timo Savola [Fri, 30 May 2008 09:37:22 +0000 (12:37 +0300)]
config: ProvideComponent replaces PlatformProvidedComponent
ProvideComponent(name) can be called for an existing component.
Timo Savola [Fri, 30 May 2008 08:55:32 +0000 (11:55 +0300)]
config: parse all files instead of just the last
now config files found in the last confdir doesn't shadow the ones in
previous confdirs, and the config files must work incrementally.
Timo Savola [Fri, 30 May 2008 10:17:11 +0000 (13:17 +0300)]
config: move top_dir as the last confdir
this allows users to override things locally.
Timo Savola [Tue, 27 May 2008 21:30:15 +0000 (00:30 +0300)]
use correct remote when comparing changes
Timo Savola [Mon, 26 May 2008 15:34:31 +0000 (18:34 +0300)]
cache: debug print when skipping cache update
Timo Savola [Mon, 26 May 2008 12:40:33 +0000 (15:40 +0300)]
TODO: list components in roots
Timo Savola [Mon, 26 May 2008 11:13:31 +0000 (14:13 +0300)]
TODO: add pull/rebase/reset related items and reorganize
Timo Savola [Thu, 22 May 2008 15:56:17 +0000 (18:56 +0300)]
TODO update
Timo Savola [Thu, 22 May 2008 15:54:54 +0000 (18:54 +0300)]
run autogen with CCTOOL
Timo Savola [Thu, 22 May 2008 13:40:19 +0000 (16:40 +0300)]
don't configure custom-style components twice
Timo Savola [Thu, 22 May 2008 11:43:05 +0000 (14:43 +0300)]
Board's gcc_options parameter can be a sequence
the attribute is always a list for later manipulated.
Timo Savola [Wed, 21 May 2008 19:53:42 +0000 (22:53 +0300)]
allow scripts in bin to be executed via symlinks
Timo Savola [Wed, 21 May 2008 16:21:46 +0000 (19:21 +0300)]
reverse the invocation order of CCTOOL_INSTALL and fakeroot
Timo Savola [Wed, 21 May 2008 14:04:28 +0000 (17:04 +0300)]
documentation
Timo Savola [Tue, 20 May 2008 13:26:35 +0000 (16:26 +0300)]
don't rely on ls-remote return status for checking repository existence
new versions of git-ls-remote have changed the behaviour (which was
undocumented to begin with). now the existence of a remote repo is
detected if there is any normal output (= heads are listed).
Timo Savola [Tue, 20 May 2008 12:49:18 +0000 (15:49 +0300)]
install using fakeroot only when component requests it
Tuomas Kulve [Sun, 11 May 2008 09:38:35 +0000 (12:38 +0300)]
rootfs.py: Added support for creating UBI images.
Tuomas Kulve [Sat, 10 May 2008 16:50:22 +0000 (19:50 +0300)]
rootfs.py: Typofixes in comments and prints.
Timo Savola [Tue, 20 May 2008 08:09:33 +0000 (11:09 +0300)]
fix local repositories
also use ls-remote instead of the deprecated peek-remote, and show its
output when debug enabled.
Timo Savola [Fri, 16 May 2008 12:58:20 +0000 (15:58 +0300)]
install in fakeroot and save database
Timo Savola [Fri, 16 May 2008 12:23:42 +0000 (15:23 +0300)]
root URL must be accompanied with branch name
'URL' -> ('URL', 'branch')
also, Component() no longer takes tag/tags parameters but a branch
parameter which overrides root's branch. the specified branch will be
checked out after cloning.
Kalle Vahlman [Wed, 7 May 2008 16:36:29 +0000 (19:36 +0300)]
Don't bomb old values with Nones in setters for rootfs Builder
Kalle Vahlman [Wed, 7 May 2008 16:29:44 +0000 (19:29 +0300)]
Fix config handling in rootfs creation
Kalle Vahlman [Mon, 5 May 2008 18:39:20 +0000 (21:39 +0300)]
Fix setting scriptdir for non-installed running
Kalle Vahlman [Tue, 29 Apr 2008 19:06:55 +0000 (22:06 +0300)]
Implement quiet flag to be passed to configure, a small speed gain
Timo Savola [Fri, 2 May 2008 08:19:12 +0000 (11:19 +0300)]
use isinstance()
Timo Savola [Wed, 30 Apr 2008 10:34:57 +0000 (13:34 +0300)]
update example scripts
(the primary config file is called "main" as of
commit
f892fc215329868f3e3d1932078429f4b00efb8f.)
Timo Savola [Wed, 30 Apr 2008 09:53:41 +0000 (12:53 +0300)]
configurable config file lookup path
config.confdirs lists directories to look for parse()'d files (last will
be searched first). --confdir command-line option can be used to append
directories (it obviously takes effect before parsing any config files).
the top-level directory is always last on the search path.
parse() now takes a glob-pattern.
Timo Savola [Tue, 29 Apr 2008 20:25:04 +0000 (23:25 +0300)]
finish board attribute changes
Timo Savola [Tue, 29 Apr 2008 20:00:13 +0000 (23:00 +0300)]
fix option parsing
Timo Savola [Tue, 29 Apr 2008 18:28:30 +0000 (21:28 +0300)]
flexible config scripts
changes:
* only the "config" script is parsed by default (which must exist)
* scripts can parse other scripts (such as "config.local", "boards"
and "components") by calling parse()
* command-line options override scripts' settings
* as a special case, the debug command-line option takes effect before
parsing scripts
Timo Savola [Tue, 29 Apr 2008 16:16:40 +0000 (19:16 +0300)]
use optparse
Timo Savola [Tue, 29 Apr 2008 14:49:19 +0000 (17:49 +0300)]
rootfs: better help message
Timo Savola [Tue, 29 Apr 2008 12:27:51 +0000 (15:27 +0300)]
new matrix-rootfs script replaces the "rootfs" action of matrix
the rootfs module now uses the optparse module.
Timo Savola [Tue, 29 Apr 2008 10:48:11 +0000 (13:48 +0300)]
support installation under arbitrary prefix
hacks to work around shortcomings of distutils:
* intercept --prefix by filtering command-line options through optparse
before passing them to distutils
* guess module location from installation prefix and Python version
* modify installed scripts in-place
Timo Savola [Wed, 16 Apr 2008 14:04:40 +0000 (17:04 +0300)]
optimize dirty files check
Timo Savola [Tue, 15 Apr 2008 14:49:08 +0000 (17:49 +0300)]
sort component list
Timo Savola [Mon, 14 Apr 2008 18:34:52 +0000 (21:34 +0300)]
new matrix-upload script for copying the source/meta repos to a server
Timo Savola [Sun, 13 Apr 2008 12:47:58 +0000 (15:47 +0300)]
update the matrixify script and move it to bin
Timo Savola [Mon, 14 Apr 2008 16:01:44 +0000 (19:01 +0300)]
show an arbitrary counter during build cache processing
Timo Savola [Mon, 14 Apr 2008 15:48:48 +0000 (18:48 +0300)]
exception-safe Component.is_dirty()
Timo Savola [Sat, 12 Apr 2008 11:25:51 +0000 (14:25 +0300)]
primary repository is now called "source" instead of "repo"
remote repository layout:
host:/path/source/component.git
host:/path/meta/component.git
Timo Savola [Sat, 12 Apr 2008 10:47:12 +0000 (13:47 +0300)]
make repository location error clearer
Timo Savola [Fri, 11 Apr 2008 18:49:36 +0000 (21:49 +0300)]
add "install-only" command for building specific component quickly
Timo Savola [Fri, 11 Apr 2008 18:07:00 +0000 (21:07 +0300)]
new "changes" command for listing unpushed commits
Timo Savola [Fri, 11 Apr 2008 16:22:44 +0000 (19:22 +0300)]
fix build error detection in verbose mode
this change makes the shell script bash-specific.
Timo Savola [Thu, 10 Apr 2008 21:08:54 +0000 (00:08 +0300)]
fix "make" build style
Timo Savola [Thu, 10 Apr 2008 21:03:26 +0000 (00:03 +0300)]
add "make" build style
Timo Savola [Thu, 10 Apr 2008 20:28:38 +0000 (23:28 +0300)]
initialize repository url on demand
Timo Savola [Thu, 10 Apr 2008 20:23:31 +0000 (23:23 +0300)]
rename makefiles for automatic syntax highlight etc.
Timo Savola [Thu, 10 Apr 2008 20:13:57 +0000 (23:13 +0300)]
generate list of valid build styles automatically
Timo Savola [Thu, 10 Apr 2008 19:46:34 +0000 (22:46 +0300)]
move config parsing out of the matrix module (and fix the graph module)
Timo Savola [Wed, 9 Apr 2008 17:29:38 +0000 (20:29 +0300)]
redirect output using a shell script instead of make
* removes ugly (and useless) make errors when a build fails.
* matrix.mak is now simpler because it contains logic for only one layer
of make invocations.
Timo Savola [Tue, 8 Apr 2008 20:01:23 +0000 (23:01 +0300)]
save log in verbose mode
Timo Savola [Tue, 8 Apr 2008 19:36:54 +0000 (22:36 +0300)]
remove dirty components from cache
Timo Savola [Tue, 8 Apr 2008 17:31:17 +0000 (20:31 +0300)]
fix cleaning
Timo Savola [Tue, 8 Apr 2008 17:20:14 +0000 (20:20 +0300)]
dirty files after a clean is not really an error
Timo Savola [Tue, 8 Apr 2008 15:26:55 +0000 (18:26 +0300)]
move -j and -mj to global config
Timo Savola [Tue, 8 Apr 2008 15:11:07 +0000 (18:11 +0300)]
prefix logged errors instead of separating them with an empty line
Timo Savola [Tue, 8 Apr 2008 15:08:34 +0000 (18:08 +0300)]
print path to relevant log file on build failure
Timo Savola [Tue, 8 Apr 2008 14:59:48 +0000 (17:59 +0300)]
-k option builds as many components as possible
Timo Savola [Tue, 8 Apr 2008 14:35:47 +0000 (17:35 +0300)]
fix dirty files reporting
Timo Savola [Tue, 8 Apr 2008 14:32:24 +0000 (17:32 +0300)]
add more buildable components after built component has been installed
Timo Savola [Tue, 8 Apr 2008 14:29:57 +0000 (17:29 +0300)]
sort initially built components
Timo Savola [Tue, 8 Apr 2008 14:25:42 +0000 (17:25 +0300)]
sort using cmpfunc, not by key
(Python 2.3 doesn't support key.)
Timo Savola [Sun, 6 Apr 2008 14:46:49 +0000 (17:46 +0300)]
use Repository.__str__() in messages
Timo Savola [Sun, 6 Apr 2008 14:42:54 +0000 (17:42 +0300)]
transparent progress info output
Timo Savola [Sun, 6 Apr 2008 13:51:38 +0000 (16:51 +0300)]
accept directory in place of component name
Timo Savola [Sun, 6 Apr 2008 13:44:42 +0000 (16:44 +0300)]
less verbose config parsing
Timo Savola [Sun, 6 Apr 2008 13:27:00 +0000 (16:27 +0300)]
more sophisticated build loop
* excludes cached components from build beforehand for more accurate
progress information.
* builds components with largest number of dependents first in hope of
avoiding bottlenecks during parallel builds.
Timo Savola [Sun, 6 Apr 2008 12:27:49 +0000 (15:27 +0300)]
cache cache status
Timo Savola [Sun, 6 Apr 2008 11:31:23 +0000 (14:31 +0300)]
use Repository.dirty_files() in cache
Timo Savola [Sun, 6 Apr 2008 09:50:25 +0000 (12:50 +0300)]
reorganized component and repository code into separate modules
Timo Savola [Sun, 6 Apr 2008 07:51:02 +0000 (10:51 +0300)]
clone component before building
Timo Savola [Sun, 6 Apr 2008 07:40:57 +0000 (10:40 +0300)]
use git reset to check out specified commit
Timo Savola [Sun, 6 Apr 2008 07:31:29 +0000 (10:31 +0300)]
Component.get_tag() -> Repository.get_commit()
Timo Savola [Sun, 6 Apr 2008 07:19:20 +0000 (10:19 +0300)]
git rev_parse with --verify
Timo Savola [Sun, 6 Apr 2008 07:02:43 +0000 (10:02 +0300)]
don't cache tag in Component
Timo Savola [Sun, 6 Apr 2008 06:56:36 +0000 (09:56 +0300)]
git archive cleanup
Timo Savola [Sat, 5 Apr 2008 23:33:06 +0000 (02:33 +0300)]
implement component comparison
Timo Savola [Sat, 5 Apr 2008 22:49:06 +0000 (01:49 +0300)]
build module
Timo Savola [Sat, 5 Apr 2008 22:40:17 +0000 (01:40 +0300)]
log module
Timo Savola [Sat, 5 Apr 2008 22:26:54 +0000 (01:26 +0300)]
return an error code when build fails
Timo Savola [Sat, 5 Apr 2008 22:18:37 +0000 (01:18 +0300)]
cache module
Timo Savola [Sat, 5 Apr 2008 21:57:45 +0000 (00:57 +0300)]
move build logic and state into a class
Timo Savola [Sat, 5 Apr 2008 21:54:53 +0000 (00:54 +0300)]
deferred error message output
Timo Savola [Fri, 4 Apr 2008 16:44:04 +0000 (19:44 +0300)]
remove flock dependency by invoking make separately for installation
install targets are serialized by the build loop logic instead of blocking
on a lockfile.
Timo Savola [Fri, 4 Apr 2008 15:11:51 +0000 (18:11 +0300)]
rebase command
Timo Savola [Fri, 4 Apr 2008 15:08:37 +0000 (18:08 +0300)]
git branch functions are no longer needed
Timo Savola [Fri, 4 Apr 2008 14:50:31 +0000 (17:50 +0300)]
more consistent build and pull messages
Timo Savola [Fri, 4 Apr 2008 14:49:09 +0000 (17:49 +0300)]
fix source-dist for new repository layout
Timo Savola [Fri, 4 Apr 2008 14:41:27 +0000 (17:41 +0300)]
don't clean meta directory
Timo Savola [Fri, 4 Apr 2008 14:37:27 +0000 (17:37 +0300)]
clone only meta repositories by default
"download" command is replaced with "clone" which clones the source code
repositories.
Timo Savola [Fri, 4 Apr 2008 14:30:17 +0000 (17:30 +0300)]
fix cache updating
Timo Savola [Fri, 4 Apr 2008 14:13:14 +0000 (17:13 +0300)]
fix and clean up help message
Timo Savola [Fri, 4 Apr 2008 14:06:15 +0000 (17:06 +0300)]
move git repository existence check out of getvar
Timo Savola [Fri, 4 Apr 2008 13:36:45 +0000 (16:36 +0300)]
git checkout doesn't require explicit branch parameter