Changeset 1542


Ignore:
Timestamp:
05/14/12 02:53:24 (13 months ago)
Author:
bruno
Message:
  • pb: Add documentation for newve and setupve; fix bug in build2pkg documentation (Eric Anderson)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • devel/pb/bin/pb

    r1541 r1542  
    492492=head2 build2pkg 
    493493 
    494 The build2pkg command takes the tar files created in the cms2build step and attempts to build the binary packages for your current operating system. In order for this step to work, you may need to edit the files in one of the $pbdefdir/$project/pbconf/$version/$project/{deb,rpm,pkg} directories. Those files will be used to try to build your package. Note that if you change those files, you need to re-run the cms2build step. 
    495  
     494The build2pkg command takes the tar files created in the cms2build step and attempts to build the binary packages for your current operating system. In order for this step to work, you may need to edit the files in one of the $pbdefdir/$project/pbconf/$version/$project/{deb,rpm,pkg} directories. Those files will be used to try to build your package. Note that if you change those files, you need to re-run the cms2build step. Then you can run a command like: 
     495 
     496 % pb -p $project -r $version build2pkg 
     497 
     498To create the files in $project/build that comprise your binary package(s). 
     499 
     500=head2 newve 
     501  
     502The newve command creates a new virtual environment, i.e. a chrooted OS for building packages. Using a virtual environment is an efficient way to build packages on a related set of operating systems. The OS's have to be related because the kernel will be shared.  Steps: 
     503 
     504=over 4 
     505 
     506=item Update ~/.pbrc 
     507 
     508Update your ~/.pbrc file to specify the vepath, velist, velogin, and vetype variables, e.g.: 
     509 
     510 vepath default = $ENV{HOME}/cache-project-builder/chroot 
     511 velist default = debian-6.0-i386 
     512 velogin default = pb 
     513 vetype default = chroot 
     514 
     515You may also choose to specify a mirror for the OS packages, and optionally http/ftp proxies.  You can specify the proxies either through environment variables ($http_proxy/$ftp_proxy) or in the configuration file. The configuration file will be used if no corresponding environment variable has been set. For example, for debian and with a local squid proxy: 
     516 
     517 rbsmirrorsrv debian = http://mirrors1.kernel.org/debian/ 
     518 http_proxy default = http://localhost:3128/ 
     519 ftp_proxy default = http://localhost:3128/ 
     520 
     521=item Run the cms2build command 
     522 
     523If you have deleted your $package/delivery directory, re-run the cms2build command as in the earlier step. This step is necessary to generate the I<package>/delivery/pbrc file. 
     524 
     525=item Create the new virtual environment 
     526 
     527Initialize the new operating system. This step will install the core OS packages for the virtual environment, e.g.: 
     528 
     529 % pb -v -p $project -m debian-6.0-i386 newve 
     530 
     531=back 
     532 
     533=head2 setupve 
     534 
     535The setupve command prepares a virtual environment for use by project builder. In particular it installs project-builder from the packages into the virtual environment. For example: 
     536 
     537 % pb -v -p $project -m debian-6.0-i386 setupve 
     538 
     539If you prefer to install the current SVN version of project builder, you can substitute the setupve option by the sbx2setupv one. 
    496540 
    497541=head1 AUTHORS 
     
    30983142    my $http_proxy = pb_distro_get_param($pbos, $http_proxy_map); 
    30993143 
    3100     $ENV{'ftp_proxy'} = $ftp_proxy if ((defined $ftp_proxy) && ($ftp_proxy ne '')); 
    3101     $ENV{'http_proxy'} = $http_proxy if ((defined $http_proxy) && ($http_proxy ne '')); 
     3144    $ENV{'ftp_proxy'} = $ftp_proxy if ((defined $ftp_proxy) && ($ftp_proxy ne '') && (not defined $ENV{'ftp_proxy'})); 
     3145    $ENV{'http_proxy'} = $http_proxy if ((defined $http_proxy) && ($http_proxy ne '') && (not defined $ENV{'http_proxy'})); 
    31023146 
    31033147    if (defined $ENV{'http_proxy'}) { 
Note: See TracChangeset for help on using the changeset viewer.