restructuring compilation, enable static target