Hi, On Fri, Apr 19, 2013 at 10:35 AM, Mandeep Sandhu < mandeepsandhu....@gmail.com> wrote:
> > On Fri, Apr 19, 2013 at 12:18 PM, Rainer Wiesenfarth < > rainer_wiesenfa...@trimble.com> wrote: > >> I would like to ask for some "expert tutorial" or some hints for using >> qmake with huge projects. >> >> What is huge? Our complete package consists of >50 applications build >> based on >100 libraries (organized in modules and units). On Windows, we >> use a Visual Studio solution file containing 250 projects, the application >> projects use "Properties" / "Framework and References" to refer to those >> libraries needed for this specific application. >> >> Now I would like to setup build system on Linux for a part of our >> package. Currently we use a own Makefile based approach that has some >> disadvantages. What I would like to have is a solution based on qmake >> (ideally) that satisfies these conditions: >> >> - if an application A depends on a library B, it is sufficient to define >> this only once ("needs"), not multiple times ("depends on" + "build after" >> + "link with" + ...) >> > > The "depends" qmake keyword should take care of this. > This probably refers to the .depends-extra-flag for SUBDIRS elements. In addition this only works for Makefile generators, i.e. not with visual studio according to the documentation. See http://qt-project.org/doc/qt-4.8/qmake-variable-reference.html#subdirs >> - build steps run in parallel on multiple cores >> > > > qmake takes care of this (I think), i.e it'll find out the number of cores > and supply the relevant number to make's "-j" option. > No, qmake does not take care of this as qmake is not a buildsystem itself (rather a buildsystem generator, it generates Makefiles, VS files etc.). But of course a user can run make -j3 himself. make does not have any support for automatic parallel build based on the number of cores. Andreas
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest