For PR514:
* language specification files are no longer configured with "configure"
* add substitutions for %bindir%, %libdir%, and various llvmgcc related
  variables needed in the c and cpp spec files.
* Implement the stubstituions in the Compiler Driver.
* Move st.in to projects/Stacker/tools/stkrc where it belongs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22128 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvmc/c b/tools/llvmc/c
new file mode 100644
index 0000000..cbe6830
--- /dev/null
+++ b/tools/llvmc/c
@@ -0,0 +1,61 @@
+# C configuration file for llvmc
+
+##########################################################
+# Language definitions
+##########################################################
+  lang.name=C
+  lang.opt1=-O1
+  lang.opt2=-O2
+  lang.opt3=-O3
+  lang.opt4=-O3
+  lang.opt5=-O3
+  lang.libs=%llvmgccdir%/lib %llvmgccdir%/lib \
+    %llvmgccdir%/lib/gcc/%llvmgccarch%
+
+##########################################################
+# Pre-processor definitions
+##########################################################
+
+  # We use gcc as our pre-processor
+  preprocessor.command=gcc -E %in% -o %out% %incls% %defs%
+  preprocessor.required=true
+
+##########################################################
+# Translator definitions
+##########################################################
+
+  # To compile C source, just use llvm-gcc's cc1
+  translator.command=%llvmcc1% -quiet %in% -o %out% \
+    %opt% %incls% %defs% %WOpts% %fOpts% %MOpts% %args% \
+    -D_GNU_SOURCE
+
+  # llvm-gcc does not pre-process
+  translator.preprocesses=false
+
+  # The translator is required to run.
+  translator.required=true
+
+  # Output of the translator is assembly
+  translator.output=assembly
+
+##########################################################
+# Optimizer definitions
+##########################################################
+  
+  # Use gccas to clean up the generated code
+  optimizer.command=%bindir%/gccas %in% -o %out% %args%
+  optimizer.required = true
+
+  # gccas doesn't translate
+  optimizer.translates = false
+
+  # gccas doesn't preprocess
+  optimizer.preprocesses=false
+
+  # gccas produces bytecode
+  optimizer.output = bytecode
+
+##########################################################
+# Assembler definitions
+##########################################################
+  assembler.command=%bindir%/llc %in% -o %out% %target% %time% %stats%