Project Home
Project Home
Source Code
Source Code
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
wiki3762: BulkBuild (Version 5)

Bulk Build on QNX (WIP)#

There's various pages out there describing bulk builds on various platforms, all slightly different. Here's one more.

Base install separation#

If you look around you'll see that most people try to do their build in a sandbox of some sort. There's various ways to to this on each platform. I actually did a bulk build in a chroot on QNX once but it wasn't stock :). Here's the layout I'm using now:

  • One drive in two partitions.
    1. Approx 8Gig for the qnx install which gets mounted read only (type 179).
    2. The rest of the driver where all the work gets done (type 178).
  • Here's a sample build file that does this BulkBuild/qnxbasepbulk.build. Notice this mounts the small install partition (hd0t179) to / read only and the second work partition (hd0t178) as /fs/hd0-qnx6-2 as would normally be done by 'diskboot' in the default image.

When performing setup and administration on the box I build from the normal qnxbasesmp image. When doing an actual bulk build I boot from the qnxbasebulk image.

To make the system usable in either configuration I add procmgr symlinks for /tmp, /home and /var to the work partition which is read / write in either case. Two other directories are used during bulk builds as I have them configured: /pbulk and /usr/pkg. /pbulk is where I check out the pkgsrc repository and where I install packages required by the controlling part of the build (the outer layer). /usr/pkg is where resulting packages created by this outer layer are staged before being tarred up in a binary package. In pkgsrc parlance the outer layer controls the inner layer which builds packages with the same default prefix of /usr/pkg that would normally be used if one were to build packages themselves outside of a bulk build.

Here's a sample /etc/rc.d/rc.local that sets up these links BulkBuild/rc.local.

Attachments:
Text mk-fragment.conf [BulkBuild/mk-fragment.conf]
Text rc.local [BulkBuild/rc.local]
Text qnxbasepbulk.build [BulkBuild/qnxbasepbulk.build]



Active Tab Versions Inactive Tab - left sideAssociations Inactive Tab - left sideAttachments (3) Inactive Tab - left sideBack LinksInactive Tab - right side  
    Version From To Version Comment Created By
    Version 25 Sean Boudreau(deleted)  -  02/16/2011
    Version 24 Sean Boudreau(deleted)  -  04/21/2010
    Version 23 Sean Boudreau(deleted)  -  04/21/2010
    Version 22 Sean Boudreau(deleted)  -  04/14/2010
    Version 21 Sean Boudreau(deleted)  -  04/08/2010
    Version 20 Sean Boudreau(deleted)  -  04/08/2010
    Version 19 Sean Boudreau(deleted)  -  04/08/2010
    Version 18 Sean Boudreau(deleted)  -  04/08/2010
    Version 17 Sean Boudreau(deleted)  -  04/08/2010
    Version 16 Sean Boudreau(deleted)  -  04/08/2010
    Version 15 Sean Boudreau(deleted)  -  04/08/2010
    Version 14 Sean Boudreau(deleted)  -  04/08/2010
    Version 13 Sean Boudreau(deleted)  -  04/08/2010
    Version 12 Sean Boudreau(deleted)  -  04/08/2010
    Version 11 Sean Boudreau(deleted)  -  04/08/2010
    Version 10 Sean Boudreau(deleted)  -  04/08/2010
    Version 9 Sean Boudreau(deleted)  -  04/08/2010
    Version 8 Sean Boudreau(deleted)  -  04/08/2010
    Version 7 Sean Boudreau(deleted)  -  04/08/2010
    Version 6 Sean Boudreau(deleted)  -  04/08/2010
    Version 5 Sean Boudreau(deleted)  -  04/08/2010
    Version 4 Sean Boudreau(deleted)  -  04/08/2010
    Version 3 Sean Boudreau(deleted)  -  07/27/2009
    Version 2 Sean Boudreau(deleted)  -  07/24/2009
    Version 1 Sean Boudreau(deleted)  -  07/24/2009