This page describes changes to the 4.3.1 build system.
qtopiamake now has help.
devices/<device>/environment has been simplified (logic moved into a separate script). See Device Profiles for details.
Power users can request device profiles to avoid setting environment variables. If the QTOPIA_NO_ENV variable is set to 1 the logic that sets PATH and TEAMBUILDER_* will not run.
-I, -L, -l, -R and -D now apply when building Qtopia and Qtopia Core so you do not need to pass everything twice (ie. you no longer need -I/foo -extra-qtopiacore-config -I/foo).
make lupdate now applies to all available languages, not just the currently selected ones. This makes it much harder to miss updating a .ts file.
Device profiles can now prevent general.pri from being loaded by setting the no_general_pri CONFIG value.
Device profiles can use the environment variable MKSPECS to locate Qt's mkspecs directory. Full details are in mkspecs.
The link test is now opt-in for external projects (due to issues found in testing actual third party code).
configure now detects the endianness of your target platform when it checks for GCC 4. This means you no longer need to tell Qtopia Core what endian your target system is. It also fixes a problem with qdawggen (the output format is endian-specific). Note that Qtopia now overrides any -big-endian or -little-endian switches passed to Qtopia Core via -extra-qtopiacore-config. If the test cannot determine the endianness of your target platform you should use the Qt Extended -big-endian or -little-endian switches.
The DBUS test now uses pkg-config. This obsoletes the -dbuspath switch and means that you will need PKG_CONFIG_PATH set. Device profiles should set this variable (and the PKG_CONFIG_PREFIX variable) in the environment file. See Device Profiles for details.
It is now a fatal error to depend on a disabled project. You can force a non-fatal error by setting disabled_deps_are_non_fatal. See depends() for details.
You can now install alternate networking scripts more easily.