//===-- driver/cl_options.h - LDC command line options ----------*- C++ -*-===// // // LDC – the LLVM D compiler // // This file is distributed under the BSD-style LDC license. See the LICENSE // file for details. // //===----------------------------------------------------------------------===// // // Defines the LDC command line options as handled using the LLVM command // line parsing library. // //===----------------------------------------------------------------------===// #ifndef LDC_CL_OPTIONS_H #define LDC_CL_OPTIONS_H #include "mars.h" #include #include #include "llvm/Support/CommandLine.h" #include "llvm/Support/CodeGen.h" namespace opts { namespace cl = llvm::cl; /* Mostly generated with the following command: egrep -e '^(cl::|#if|#e)' gen/cl_options.cpp \ | sed -re 's/^(cl::.*)\(.*$/ extern \1;/' */ extern cl::list fileList; extern cl::list runargs; extern cl::opt compileOnly; #if DMDV2 extern cl::opt enforcePropertySyntax; #endif extern cl::opt createStaticLib; extern cl::opt createSharedLib; extern cl::opt noAsm; extern cl::opt dontWriteObj; extern cl::opt objectFile; extern cl::opt objectDir; extern cl::opt soname; extern cl::opt output_bc; extern cl::opt output_ll; extern cl::opt output_s; extern cl::opt output_o; extern cl::opt disableRedZone; extern cl::opt ddocDir; extern cl::opt ddocFile; extern cl::opt jsonFile; extern cl::opt hdrDir; extern cl::opt hdrFile; extern cl::list versions; extern cl::opt moduleDepsFile; extern cl::opt mArch; extern cl::opt m32bits; extern cl::opt m64bits; extern cl::opt mCPU; extern cl::list mAttrs; extern cl::opt mTargetTriple; extern cl::opt mRelocModel; extern cl::opt mCodeModel; extern cl::opt singleObj; extern cl::opt linkonceTemplates; // Arguments to -d-debug extern std::vector debugArgs; // Arguments to -run } #endif