class PackageConfig

def collect_cflags

def collect_cflags
  target_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 = path_flags.collect {|flag| normalize_path_flag(flag, "-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