add -D options, close #12