Changeset 2182 in ProjectBuilder for devel/pb-modules
- Timestamp:
- Feb 20, 2017, 7:40:38 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
devel/pb-modules/lib/ProjectBuilder/Distribution.pm
r2181 r2182 331 331 332 332 This function install the dependencies required to build the package on a distro. 333 Dependencies can be passed as a parameter in which case they are not computed 333 If $forcerepo is defined then do not assumer package are alredy installed, but reinstall them 334 (useful if you add a repo which contains more up to date packages that you need) 335 Dependencies can be passed as the 4th parameter in which case they are not computed 334 336 335 337 =cut … … 340 342 my $f = shift; 341 343 my $pbos = shift; 342 my $deps = shift; 344 my $forcerepo = shift; 345 my $deps = shift; # optional list of deps to install 343 346 344 347 # Protection 345 348 confess "Missing install command for $pbos->{name}-$pbos->{version}-$pbos->{arch}" unless (defined $pbos->{install} && $pbos->{install} =~ /\w/); 346 349 pb_apply_conf_proxy($pbos); 347 348 # Get dependencies in the build file if not forced349 $deps = pb_distro_getdeps($f,$pbos) if (not defined $deps);350 350 pb_log(1, "ftp_proxy=$ENV{ftp_proxy}\n") if (defined $ENV{ftp_proxy}); 351 351 pb_log(1, "http_proxy=$ENV{http_proxy}\n") if (defined $ENV{http_proxy}); 352 353 # Get dependencies in the build file if not forced 354 $deps = pb_distro_getdeps($f,$pbos, $forcerepo) if ((not defined $deps) || (defined $forcerepo)); 352 355 pb_log(2,"deps: $deps\n"); 353 356 return if ((not defined $deps) || ($deps =~ /^\s*$/)); … … 361 364 } 362 365 # Check that all deps have been installed correctly 363 $deps = pb_distro_getdeps($f, $pbos );366 $deps = pb_distro_getdeps($f, $pbos, $forcerepo); 364 367 confess "Some dependencies did not install ($deps)" if ((defined $deps) && ($deps =~ /\S/) && ($Global::pb_stop_on_error)); 365 368 } … … 375 378 my $f = shift; 376 379 my $pbos = shift; 380 my $forcerepo = shift; 377 381 378 382 my $regexp = ""; … … 453 457 $/ = $oldsep; 454 458 pb_log(2,"now deps: $deps\n"); 455 my $deps2 = pb_distro_only_deps_needed($pbos,$deps); 456 return($deps2); 459 if (defined $forcerepo) { 460 # We want to force installation of all pkgs 461 # because a repo was setup in between, which may contains updated versions 462 pb_log(0,"Forcing installation of all packages due to previous repo setup\n"); 463 return($deps); 464 } else { 465 pb_log(0,"Installation of only necessary packages\n"); 466 my $deps2 = pb_distro_only_deps_needed($pbos,$deps); 467 return($deps2); 468 } 457 469 } 458 470 … … 516 528 my $pbos = shift; 517 529 518 pb_distro_setuprepo_gen($pbos,pb_distro_conffile(),"osrepo");530 return(pb_distro_setuprepo_gen($pbos,pb_distro_conffile(),"osrepo")); 519 531 } 520 532 … … 529 541 my $pbos = shift; 530 542 531 pb_distro_setuprepo_gen($pbos,"$ENV{'PBDESTDIR'}/pbrc","addrepo");543 return(pb_distro_setuprepo_gen($pbos,"$ENV{'PBDESTDIR'}/pbrc","addrepo")); 532 544 } 533 545 … … 566 578 my $pbkey = shift; 567 579 568 return if (not defined $pbconf);569 return if (not defined $pbkey);580 return undef if (not defined $pbconf); 581 return undef if (not defined $pbkey); 570 582 my ($addrepo) = pb_conf_read($pbconf,$pbkey); 571 return if (not defined $addrepo);583 return undef if (not defined $addrepo); 572 584 573 585 my $param = pb_distro_get_param($pbos,$addrepo); 574 return if ($param eq "");586 return undef if ($param eq ""); 575 587 576 588 pb_apply_conf_proxy($pbos); … … 615 627 } 616 628 my $dest = "$dirdest/$bn"; 617 return if (pb_distro_compare_repo("$ENV{'PBTMP'}/$bn",$dest) == 1);629 return undef if (pb_distro_compare_repo("$ENV{'PBTMP'}/$bn",$dest) == 1); 618 630 confess "Missing directory $dirdest ($reponame)" unless (-d $dirdest); 619 631 pb_system("sudo mv $ENV{'PBTMP'}/$bn $dest","Adding $reponame repository") if (not -f "$dest"); … … 657 669 } 658 670 } 659 return ;671 return("forcerepo"); 660 672 } 661 673
Note:
See TracChangeset
for help on using the changeset viewer.