diff --git a/HISTORY b/HISTORY index d8d3641..1687dba 100644 --- a/HISTORY +++ b/HISTORY @@ -1,3 +1,6 @@ +Version history: 0.83 + * Added option, --ignore-modules. + Version history: 0.82 * Add hack to make kdebindings build using builddir == srcdir even though srcdir is really != builddir. Unfortunately, kdebindings still won't diff --git a/doc.html.in b/doc.html.in index 81abf6d..13298d6 100644 --- a/doc.html.in +++ b/doc.html.in @@ -65,6 +65,15 @@ those who either can't or don't feel like installing it.

It is authored by Michael Pyne (mpyne (AT) grammarian (DOT) homelinux (DOT) net), and is one of several build scripts for this purpose.

+

2004-Aug-29: v0.83
+New features: +

+

2004-Aug-12: v0.82
New features:

-

2004-Jul-11: v0.77
-OK, this will be the last one, berkus really wanted the included new -feature.
-New features: -

- -

2004-Jul-11: v0.76
-This will probably be the last release before I go out of town for a week -or so on the 14th. If you send me mail and don't get a response -while I'm gone, that's why.
-New features: -

- -Bugfixes: - - -

2004-Jul-02: v0.75
-New features: -

- -Bugfixes: - -

-

Features

@@ -767,6 +722,9 @@ act like you did.
  • --build-only, Only perform the build process.
  • +
  • --ignore-modules, Don't including the modules +passed on the rest of the command line in the update/build process.
  • +
  • --no-cvs, Skip contacting the CVS server.
  • --no-build, Skip the build process.
  • @@ -840,7 +798,7 @@ href="#options">.kdecvs-buildrc options.
    CVSup is a registered trademark of John D. Polstra.
    -Last modified: Thu Aug 12 22:46:40 2004
    +Last modified: Sun Aug 29 00:46:53 2004
    diff --git a/kdecvs-build b/kdecvs-build index 7b94287..39208ff 100755 --- a/kdecvs-build +++ b/kdecvs-build @@ -70,6 +70,7 @@ my %global_opts = ( ); my %package_opts; # Holds module-specific options. +my %ignore_list; # List of packages to refuse to include in the build list. my @update_list; # List of modules to update/checkout. my @build_list; # List of modules to build. my $install_flag; # True if we're in install mode. @@ -530,11 +531,11 @@ sub read_options } # Done reading options, add this module to the update list - push (@update_list, $modulename); + push (@update_list, $modulename) unless exists $ignore_list{$modulename}; # Add it to the build list, unless the build is only # supposed to be done manually. - if (not get_option ($modulename, 'manual-build')) + if (not get_option ($modulename, 'manual-build') and not exists $ignore_list{$modulename}) { push (@build_list, $modulename); } @@ -623,7 +624,7 @@ sub process_arguments { my $arg; my $author = "Michael Pyne "; - my $version = "kdecvs-build 0.82\n"; + my $version = "kdecvs-build 0.83\n"; my @argv; while ($_ = shift @ARGV) @@ -775,6 +776,32 @@ DONE last SWITCH; }; + /^--ignore-modules$/ && do { + # We need to keep read_options() from adding these modules to + # the build list, taken care of by ignore_list. We then need + # to remove the modules from the command line, taken care of + # by the @ARGV = () statement; + my @options = (); + foreach (@ARGV) + { + if (/^-/) + { + push @options, $_; + } + else + { + $ignore_list{$_} = 1; + + # the pattern match doesn't work with $_, alias it. + my $module = $_; + @argv = grep (!/^$module$/, @argv); + } + } + @ARGV = @options; + + last SWITCH; + }; + /^(--pretend)|(-p)$/ && do { $global_opts{'#pretend'} = 1; last SWITCH;