class PackageConfig

def collect_cflags

def collect_cflags
  target_packages = sort_packages([self, *all_required_packages])
  cflags_set = []
  target_packages.each do |package|
    cflags_set << package.declaration("Cflags")
  end
  all_cflags = normalize_cflags(Shellwords.split(cflags_set.join(" ")))
  path_flags, other_flags = all_cflags.partition {|flag| /\A-I/ =~ flag}
  path_flags = normalize_path_flags(path_flags, "-I")
  path_flags = path_flags.reject do |flag|
    flag == "-I/usr/include"
  end
  path_flags = path_flags.uniq
  if @msvc_syntax
    path_flags = path_flags.collect do |flag|
      flag.gsub(/\A-I/, "/I")
    end
  end
  [path_flags, other_flags]
end