summaryrefslogtreecommitdiff
path: root/ACE/bin/DependencyGenerator/DependencyWriterFactory.pm
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/bin/DependencyGenerator/DependencyWriterFactory.pm')
-rw-r--r--ACE/bin/DependencyGenerator/DependencyWriterFactory.pm35
1 files changed, 35 insertions, 0 deletions
diff --git a/ACE/bin/DependencyGenerator/DependencyWriterFactory.pm b/ACE/bin/DependencyGenerator/DependencyWriterFactory.pm
new file mode 100644
index 00000000000..74fdbe2d871
--- /dev/null
+++ b/ACE/bin/DependencyGenerator/DependencyWriterFactory.pm
@@ -0,0 +1,35 @@
+package DependencyWriterFactory;
+
+# ************************************************************
+# Description : Create DependencyWriter objects.
+# Author : Chad Elliott
+# Create Date : 5/23/2003
+# ************************************************************
+
+# ************************************************************
+# Pragmas
+# ************************************************************
+
+use strict;
+
+use GNUDependencyWriter;
+use NMakeDependencyWriter;
+use MakeDependencyWriter;
+
+# ************************************************************
+# Subroutine Section
+# ************************************************************
+
+sub create {
+ switch: {
+ $_[0] eq 'gnu' && do { return new GNUDependencyWriter(); };
+ $_[0] eq 'nmake' && do { return new NMakeDependencyWriter(); };
+ $_[0] eq 'make' && do { return new MakeDependencyWriter(); };
+ print STDERR "WARNING: Invalid dependency writer type: $_[0]\n";
+ }
+
+ return new DependencyWriter();
+}
+
+
+1;