tdesvn-build features include:
Automatically checks out or updates modules from Subversion, as appropriate.
Times the build process for modules.
Automatically tries to rebuild modules that were using incremental make, which is prone to failure after certain kinds of commits.
Can resume a previous script, or start the build process from a particular module.
Comes built-in with a sane set of default options appropriate for building a base KDE single-user installation from the anonymous Subversion repository.
Comes with Unsermake support.
Tilde-expansion for your configuration options. For example, you can specify:
qtdir ~/tdesvn/build/qt-copy
Configurable build, source, and logging directories
Automatically sets up a build system, with the source directory not the same as the build directory, in order to keep the source directory pristine. The exception is qt-copy, which is not designed to be built like that (unless you would like to test the “qt with a separate build directory hack”).
You can specify global options to apply to every module to check out, and you can specify options to apply to individual modules as well.
Since the autotools sometimes get out of sync with changes to the
source tree, you can force a rebuild of a module by creating a file called
.refresh-me in the build directory of the module in question, or by running
tdesvn-build with the --refresh-build
option.
You can specify various environment values to be used during the build,
including TDEDIR
, TQTDIR
, DO_NOT_COMPILE
,
and CXXFLAGS
.
Command logging. Logs are dated and numbered so that you always have a log of a script run. Also, a special symlink called latest is created to always point to the most recent log entry in the log directory.
If you are using a user build of KDE instead of a system build (for which
you must be root to install), you can use the script to install for you. I
haven not audited this code, and it makes ample use of the system()
call, so I would not recommend running it as root at this point.
You can use make-install-prefix to prefix the make install command line with a separate command, which is useful for sudo.
You can use the apidox option to automatically build and install the API documentation for some modules.
You can check out only a portion of a KDE Subversion module. For example, you could check out only the taglib from tdesupport, or only K3B from extragear/multimedia. The script will automatically pull in kde-common if necessary to make the build work.
You can “pretend” to do the operations. If you pass
--pretend
or -p
on the
command line, the script will give a very verbose description of the commands
it is about to execute, without actually executing it.
Support for checking out specific branches of Subversion modules. This work still needs to be completed, but you already select the branch you want to build using the module-base-path configuration option.
Things that tdesvn-build does NOT do:
Find the fastest KDE Subversion mirror. There is not even a list shipped with the script at this point, although the default server should work fine.
Brush your teeth. You should remember to do that yourself.
The script probably is not bug-free. Sorry.
Would you like to comment or contribute an update to this page?
Send feedback to the TDE Development Team