summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelliott_c <ocielliottc@users.noreply.github.com>2006-08-02 14:57:33 +0000
committerelliott_c <ocielliottc@users.noreply.github.com>2006-08-02 14:57:33 +0000
commita322e7dfede1be13684ffe8937ba4aa947dd4678 (patch)
tree6a1a2093f30a8d15edf78f1fc98a901d848c9fd1
parent6f5bf4cf990785480b381c87dda70d1e28d50a2d (diff)
downloadATCD-a322e7dfede1be13684ffe8937ba4aa947dd4678.tar.gz
ChangeLogTag: Wed Aug 2 14:55:45 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r--ACE/ACE-INSTALL.html8
-rw-r--r--ACE/ChangeLog28
-rw-r--r--ACE/bin/ChangeLogEditor/CVSFileLocator.pm18
-rw-r--r--ACE/bin/ChangeLogEditor/ChangeLogEdit.pm7
-rw-r--r--ACE/bin/ChangeLogEditor/ChangeLogEntry.pm5
-rw-r--r--ACE/bin/ChangeLogEditor/FileLocator.pm38
-rw-r--r--ACE/bin/ChangeLogEditor/SVNFileLocator.pm38
-rw-r--r--ACE/bin/MakeProjectCreator/README12
-rwxr-xr-xACE/bin/cle.pl2
-rwxr-xr-xACE/bin/make_release2
10 files changed, 125 insertions, 33 deletions
diff --git a/ACE/ACE-INSTALL.html b/ACE/ACE-INSTALL.html
index d0ec57341d8..5928fb8af2e 100644
--- a/ACE/ACE-INSTALL.html
+++ b/ACE/ACE-INSTALL.html
@@ -237,8 +237,8 @@ instructions in this document.
If it is necessary to generate
files for build tools for other compilers, one must
run MPC to generate the
-appropriate files. Please see <a href="MPC/USAGE">USAGE</a>, <a
-href="MPC/README">README</a>, and <a
+appropriate files. Please see <a href="MPC/docs/USAGE">USAGE</a>, <a
+href="MPC/docs/README">README</a>, and <a
href="bin/MakeProjectCreator/README">README for ACE</a> files for
details. The options that have been used to generate the above build
files can be found in <a
@@ -608,7 +608,7 @@ https://msdn.microsoft.com/visualc/downloads/default.aspx</a> for information.
files for static builds. Workspaces for static and DLL builds will be
available through the stock release at DOC group's website. The
workspaces for MFC are not available and have to be generated using
- MPC. Please see <a href="MPC/README">MPC's README</a> for
+ MPC. Please see <a href="MPC/docs/README">MPC's README</a> for
details.<br><br>
</li><li>Now load the solution file for ACE (ACE_ROOT/ACE.sln).<br>
<br>
@@ -2620,7 +2620,7 @@ The Makefile Project Creator (MPC) is a tool that takes platform and
building tool generic files (mpc files) as input, which describe basic
information needed to generate a "project" file for various build
tools, including Make, NMake, Visual C++ 6, Visual C++ 7, etc. Please
-see <a href="MPC/USAGE">USAGE</a>, <a href="MPC/README">README</a> for
+see <a href="MPC/docs/USAGE">USAGE</a>, <a href="MPC/docs/README">README</a> for
documentation on MPC.<P>
A common usage for creating a Windows workspace containing just the
diff --git a/ACE/ChangeLog b/ACE/ChangeLog
index 7d11b72f94a..d7fbd843b00 100644
--- a/ACE/ChangeLog
+++ b/ACE/ChangeLog
@@ -1,3 +1,31 @@
+Wed Aug 2 14:55:45 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * ACE-INSTALL.html:
+
+ Updated the location of the MPC documentation. It was moved from
+ the MPC root directory to a docs directory.
+
+ * bin/ChangeLogEditor/CVSFileLocator.pm:
+ * bin/ChangeLogEditor/ChangeLogEdit.pm:
+ * bin/ChangeLogEditor/ChangeLogEntry.pm:
+ * bin/ChangeLogEditor/FileLocator.pm:
+ * bin/ChangeLogEditor/SVNFileLocator.pm:
+ * bin/cle.pl:
+
+ Added better support for subversion and it now reports errors from
+ cvs/svn.
+
+ * bin/MakeProjectCreator/README:
+
+ Updated to provide information on anonymously checking out MPC
+ using Subversion.
+
+ * bin/make_release:
+
+ I added "-type gnuace" to the options where the default project
+ type was assumed. Eventually, MPC will not have a default project
+ type.
+
Wed Aug 2 13:47:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
* docs/ACE-development-process.html:
diff --git a/ACE/bin/ChangeLogEditor/CVSFileLocator.pm b/ACE/bin/ChangeLogEditor/CVSFileLocator.pm
index d5cc9ff5cbe..8e478509f01 100644
--- a/ACE/bin/ChangeLogEditor/CVSFileLocator.pm
+++ b/ACE/bin/ChangeLogEditor/CVSFileLocator.pm
@@ -30,11 +30,13 @@ sub locate {
my(@removed) = ();
my(@conflicts) = ();
my(@unknown) = ();
+ my($error) = undef;
my($cvsroot) = $self->obtainCVSROOT();
- my($nul) = ($^O eq 'MSWin32' ? 'nul' : '/dev/null');
+ my($err) = $self->tmpnam('cle_cvs.err');
- if (open($fh, 'cvs -q ' . (defined $cvsroot ? "-d $cvsroot " : '') .
- "-n update @dirs 2> $nul |")) {
+ if (open($fh, 'cvs -f -q ' . ($^O eq 'MSWin32' ? '-N ' : '') .
+ (defined $cvsroot ? "-d $cvsroot " : '') .
+ "-n update @dirs 2> $err |")) {
while(<$fh>) {
my($line) = $_;
if ($line =~ /^[AM]\s+(.*)/) {
@@ -46,13 +48,19 @@ sub locate {
elsif ($line =~ /^[C]\s+(.*)/) {
push(@conflicts, $1);
}
- elsif ($line =~ /^[\?]\s+(.*)/) {
+ elsif ($line =~ /^[\?]\s+(.*)/ && index($line, $err) == -1) {
push(@unknown, $1);
}
}
close($fh);
+
+ $error = $self->process_errors($err);
+ }
+ else {
+ $error = "Unable to run cvs with error redirection.";
}
- return \@modified, \@removed, \@conflicts, \@unknown;
+
+ return \@modified, \@removed, \@conflicts, \@unknown, $error;
}
diff --git a/ACE/bin/ChangeLogEditor/ChangeLogEdit.pm b/ACE/bin/ChangeLogEditor/ChangeLogEdit.pm
index b7831ae2e5b..1bbfee507b1 100644
--- a/ACE/bin/ChangeLogEditor/ChangeLogEdit.pm
+++ b/ACE/bin/ChangeLogEditor/ChangeLogEdit.pm
@@ -45,7 +45,7 @@ sub edit {
my($creator) = new ChangeLogEntry($self->{'name'},
$self->{'email'});
my($entry) = '';
- ($entry, $unknown) = $creator->create(@dirs);
+ ($entry, $unknown, $error) = $creator->create(@dirs);
if (defined $entry) {
if ($entry =~ /^ERROR:/) {
$error = $entry;
@@ -95,8 +95,9 @@ sub edit {
}
}
else {
- $error = "Either there are no modified/removed files files or " .
- "there is a revision\ncontrol system problem.";
+ $error = (defined $error ? "There is a revision control system " .
+ "problem:\n$error" :
+ 'There are no modified/removed files.');
}
}
else {
diff --git a/ACE/bin/ChangeLogEditor/ChangeLogEntry.pm b/ACE/bin/ChangeLogEditor/ChangeLogEntry.pm
index 2028dec1874..1fdcf9d3da3 100644
--- a/ACE/bin/ChangeLogEditor/ChangeLogEntry.pm
+++ b/ACE/bin/ChangeLogEditor/ChangeLogEntry.pm
@@ -87,7 +87,8 @@ sub create {
my($modif,
$remov,
$confl,
- $unknown) = $fl->locate(@dirs);
+ $unknown,
+ $error) = $fl->locate(@dirs);
my($entry) = scalar(gmtime());
if (defined $$confl[0]) {
@@ -137,7 +138,7 @@ sub create {
$entry = undef;
}
- return $entry, $unknown;
+ return $entry, $unknown, $error;
}
diff --git a/ACE/bin/ChangeLogEditor/FileLocator.pm b/ACE/bin/ChangeLogEditor/FileLocator.pm
index 7b768863a22..5707a84c345 100644
--- a/ACE/bin/ChangeLogEditor/FileLocator.pm
+++ b/ACE/bin/ChangeLogEditor/FileLocator.pm
@@ -25,6 +25,44 @@ sub new {
}
+sub tmpnam {
+ my($self) = shift;
+ my($file) = shift;
+ my(@def) = ("/tmp", ".");
+
+ foreach my $possible ($ENV{TMPDIR}, $ENV{TEMP}, $ENV{TMP}, @def) {
+ if (defined $possible && -d $possible && -w $possible) {
+ $possible =~ s!\\!/!g;
+ return $possible . '/' . $$ . '_' . $> . '_' . $file;;
+ }
+ }
+
+ return $file;
+}
+
+
+sub process_errors {
+ my($self) = shift;
+ my($file) = shift;
+ my($error) = undef;
+
+ if (-s $file != 0) {
+ my($fh) = new FileHandle();
+ if (open($fh, $file)) {
+ $error = '';
+ while(<$fh>) {
+ $error .= $_;
+ }
+ close($fh);
+ $error =~ s/\s+$//;
+ }
+ }
+ unlink($file);
+
+ return $error;
+}
+
+
sub locate {
my($self) = shift;
my(@dirs) = @_;
diff --git a/ACE/bin/ChangeLogEditor/SVNFileLocator.pm b/ACE/bin/ChangeLogEditor/SVNFileLocator.pm
index 246b9dc9c7f..55a8674af81 100644
--- a/ACE/bin/ChangeLogEditor/SVNFileLocator.pm
+++ b/ACE/bin/ChangeLogEditor/SVNFileLocator.pm
@@ -30,23 +30,45 @@ sub locate {
my(@removed) = ();
my(@conflicts) = ();
my(@unknown) = ();
- my($nul) = ($^O eq 'MSWin32' ? 'nul' : '/dev/null');
+ my($error) = undef;
+ my($err) = $self->tmpnam('cle_svn.err');
- if (open($fh, "svn diff @dirs 2> $nul |")) {
+ if (open($fh, "svn status @dirs 2> $err |")) {
while(<$fh>) {
my($line) = $_;
- if ($line =~ /^Index:\s+(.*)/) {
- if (-r $1) {
- push(@modified, $1);
+ if ($line =~ /^([A-Z\s\?])([A-Z\s])[A-Z\s][\+\*\s][A-Z\s][A-Z\s]\s+(.*)$/) {
+ my($content) = $1;
+ my($property) = $2;
+ my($file) = $3;
+
+ ## Subversion differs from CVS in that it will print paths with
+ ## windows style back-slashes instead of forward slashes.
+ $file =~ s!\\!/!g if ($^O eq 'MSWin32');
+
+ if ($property eq 'M' ||
+ $content eq 'M' || $content eq 'A' || $content eq 'R') {
+ push(@modified, $file);
+ }
+ elsif ($content eq 'D') {
+ push(@removed, $file);
+ }
+ elsif ($content eq 'C' || $property eq 'C') {
+ push(@conflicts, $file);
}
- else {
- push(@removed, $1);
+ elsif ($content eq '?' && index($line, $err) == -1) {
+ push(@unknown, $file);
}
}
}
close($fh);
+
+ $error = $self->process_errors($err);
+ }
+ else {
+ $error = "Unable to run svn with error redirection.";
}
- return \@modified, \@removed, \@conflicts, \@unknown;
+
+ return \@modified, \@removed, \@conflicts, \@unknown, $error;
}
diff --git a/ACE/bin/MakeProjectCreator/README b/ACE/bin/MakeProjectCreator/README
index 0b5da7554f3..697fee1691c 100644
--- a/ACE/bin/MakeProjectCreator/README
+++ b/ACE/bin/MakeProjectCreator/README
@@ -3,10 +3,6 @@ the base projects in the config directory are ACE- and TAO-specific,
along with the perl modules for the gnuace and borland types and the
templates that go along with those implementations.
-The default workspace and project type for ACE_wrappers/bin/mwc.pl and
-ACE_wrappers/bin/mpc.pl is gnuace. This differs from the default for
-mwc.pl and mpc.pl located in the MPC directory.
-
GNUACE-specific aspects of project keywords
-------------------------------------------
@@ -34,10 +30,8 @@ The environment variable MPC_GNUACE_DIRECTORY_DEPS can be set to get the
directory based build that was used up until April of 2006.
For more information about MPC, see the README and USAGE files in the
-MPC directory.
+MPC docs directory.
-You can get MPC using cvs. If you have access to the DOC Group CVS
-repository, you can check-out the 'MPC' module. You can also
-anonymously check-out MPC from OCI's anonymous CVS server.
+You can anonymously check-out MPC using Subversion:
-cvs -d :pserver:anonymous@anoncvs.ociweb.com:/cvs co MPC
+svn co svn://svn.dre.vanderbilt.edu/DOC/MPC/trunk MPC
diff --git a/ACE/bin/cle.pl b/ACE/bin/cle.pl
index 03f8785f7cd..cc6f7768aae 100755
--- a/ACE/bin/cle.pl
+++ b/ACE/bin/cle.pl
@@ -271,7 +271,7 @@ if (defined $unknown) {
my(@uarray) = @$unknown;
if ($#uarray >= 0) {
print "WARNING: The following files are unknown to the ",
- "revsion control system:\n";
+ "revision control system:\n";
foreach my $unk (@uarray) {
print "$unk\n";
}
diff --git a/ACE/bin/make_release b/ACE/bin/make_release
index ab2d1bd4efb..43a42a63ed3 100755
--- a/ACE/bin/make_release
+++ b/ACE/bin/make_release
@@ -810,7 +810,7 @@ sub generate_makefiles () {
my $ce_option = '-name_modifier *_WinCE -features "uses_wchar=1,wince=1" '.$tmp_ce;
&ex ("cd ACE_wrappers; \
- bin/mwc.pl $exclude_option $mpc_option; \
+ bin/mwc.pl -type gnuace $exclude_option $mpc_option; \
find ./ -name 'GNUmake*' | /usr/bin/xargs chmod 0644");
&ex ("cd ACE_wrappers; \