parser=argparse.ArgumentParser(description="qcor: the quantum-classical C++ compiler",
formatter_class=argparse.RawTextHelpFormatter,
fromfile_prefix_chars='@')
parser.add_argument('-v',metavar='',
help='turn on qcor verbose mode - prints actual clang calls plus extra info while compiling.')
parser.add_argument('-qpu',metavar=('name[:backend]'),help='specify quantum backend name. this corresponds to the name of an xacc accelerator (plus optional backend name).\nExamples include qcs:Aspen-4-2Q-H, ibm:ibmq_valencia, tnqvm, etc.')
parser.add_argument('-shots',metavar=('n_shots'),nargs=1,help='provide the number of shots to execute on shot-enabled backend.')
parser.add_argument('-c',metavar=('file.cpp'),help='specify compile-only, no library linking.\n$ qcor -c src.cpp [outputs src.o for future linking]\n')
parser.add_argument('-o',metavar=('object.o'),help='provide the name of the object file (if compile only) or executable (if compile and link or just link).\n$ qcor -o out.o -c src.cpp\n$ qcor -o out.exe src.cpp\n')
parser.add_argument('file',help='you must specify the c++ source file name to compile.')
parser.add_argument('-I',action='append',nargs=1,metavar=('header_file.hpp'),help='specify additional headers to add to the include search path.')