OpenPKG CVS Repository http://cvs.openpkg.org/ ____________________________________________________________________________
Server: cvs.openpkg.org Name: Michael van Elst Root: /e/openpkg/cvs Email: [EMAIL PROTECTED] Module: openpkg-src openpkg-web Date: 10-Jul-2003 16:43:07 Branch: HEAD Handle: 2003071015430501 Modified files: openpkg-src/openpkg-tool openpkg-build.pl openpkg-tool.spec openpkg-web news.txt Log: require exact option match for binary targets to avoid picking up additional dependencies at this late stage Summary: Revision Changes Path 1.91 +14 -8 openpkg-src/openpkg-tool/openpkg-build.pl 1.65 +2 -2 openpkg-src/openpkg-tool/openpkg-tool.spec 1.5510 +1 -0 openpkg-web/news.txt ____________________________________________________________________________ patch -p0 <<'@@ .' Index: openpkg-src/openpkg-tool/openpkg-build.pl ============================================================================ $ cvs diff -u -r1.90 -r1.91 openpkg-build.pl --- openpkg-src/openpkg-tool/openpkg-build.pl 2 Jul 2003 12:23:50 -0000 1.90 +++ openpkg-src/openpkg-tool/openpkg-build.pl 10 Jul 2003 14:43:06 -0000 1.91 @@ -1510,9 +1510,12 @@ # check wether installed package matches # build options # -sub target_suitable ($$) { - my($target, $with) = @_; - my($iwith); +# if default = 1 then options which are not +# required must be identical to the DEFOPTS. +# +sub target_suitable ($$$) { + my($target, $with, $default) = @_; + my($iwith,$dwith); my($k,$v); if ($target->{GOAL}) { @@ -1522,9 +1525,12 @@ } $iwith = $target->{OPTIONS}; - while (($k,$v) = each %$with) { - if (exists $iwith->{$k}) { + $dwith = $target->{DEFOPTS}; + while (($k,$v) = each %$iwith) { + if (exists $with->{$k}) { return 0 if $iwith->{$k} ne $with->{$k}; + } elsif ($default) { + return 0 if $iwith->{$k} ne $dwith->{$k}; } } @@ -1651,7 +1657,7 @@ $t = $i->{$_}->[0]; next unless $t && get_with($t); - if (target_suitable($t, $env->{with})) { + if (target_suitable($t, $env->{with}, 0)) { $tdef = $t; unless ($env->{upgrade} || $env->{zero}) { return ($t, 1); @@ -1742,7 +1748,7 @@ } elsif ($why = target_better($env, $target, $env->{installed})) { target_setstatus($target,'UPDATE',3); print "# rebuilding $target->{name} ($why)\n"; - } elsif (!target_suitable($t, $env->{with})) { + } elsif (!target_suitable($t, $env->{with}, 0)) { target_setstatus($target,'MISMATCH',2); print "# rebuilding $target->{name} (parameter mismatch)\n"; } elsif ($env->{goals} && $target->{GOAL}) { @@ -2175,7 +2181,7 @@ # $cmd1 = undef; if ($uncond || $_->{REBUILD} || !-f $bpkg || - !target_suitable(binary_target($_, $bpkg), $with)) { + !target_suitable(binary_target($_, $bpkg), $with, 1)) { $opt = make_defines($_->{OPTIONS}, $with, $_->{DEFOPTS}, $c); @@ . patch -p0 <<'@@ .' Index: openpkg-src/openpkg-tool/openpkg-tool.spec ============================================================================ $ cvs diff -u -r1.64 -r1.65 openpkg-tool.spec --- openpkg-src/openpkg-tool/openpkg-tool.spec 8 Jul 2003 14:41:21 -0000 1.64 +++ openpkg-src/openpkg-tool/openpkg-tool.spec 10 Jul 2003 14:43:06 -0000 1.65 @@ -32,8 +32,8 @@ Distribution: OpenPKG [PLUS] Group: Bootstrapping License: GPL -Version: 20030702 -Release: 20030702 +Version: 20030710 +Release: 20030710 # list of sources Source0: openpkg.sh @@ . patch -p0 <<'@@ .' Index: openpkg-web/news.txt ============================================================================ $ cvs diff -u -r1.5509 -r1.5510 news.txt --- openpkg-web/news.txt 10 Jul 2003 14:22:32 -0000 1.5509 +++ openpkg-web/news.txt 10 Jul 2003 14:43:05 -0000 1.5510 @@ -1,3 +1,4 @@ +10-Jul-2003: Upgraded package: P<openpkg-tool-20030710-20030710> 10-Jul-2003: Upgraded package: P<imagemagick-5.4.8.2-1.1.1> 10-Jul-2003: Upgraded package: P<imagemagick-5.5.3.2-1.2.1> 10-Jul-2003: Upgraded package: P<nessus-libs-2.0.7-20030710> @@ . ______________________________________________________________________ The OpenPKG Project www.openpkg.org CVS Repository Commit List [EMAIL PROTECTED]