@@ 373,7 373,7 @@ func main() {
var cflags []string
for _, v := range I {
- cflags = append(cflags, "-I", v)
+ cflags = append(cflags, "-I", canonicalizeFilename(v))
}
cfg, err := cc.NewConfig(runtime.GOOS, runtime.GOARCH, cflags...)
@@ 420,19 420,7 @@ func main() {
for _, filename := range filenames {
origFilename := applyFilePrefixMap(filename, filePrefixMap)
-
- // cc evaluates symlinks
- filename, err := filepath.EvalSymlinks(filename)
- if err != nil {
- log.Fatalf("failed to eval symlinks: %v", err)
- }
-
- // cc expects absolute paths
- filename, err = filepath.Abs(filename)
- if err != nil {
- log.Fatalf("failed to get absolute path: %v", err)
- }
-
+ filename = canonicalizeFilename(filename)
targetMap[filename] = origFilename
sources = append(sources, cc.Source{Name: filename})
}
@@ 674,3 662,19 @@ func symHref(declMap map[declKey]declData, kind declKind, name string) string {
anchor := fmt.Sprintf("#%v-%v", kind, name)
return path + anchor
}
+
+func canonicalizeFilename(filename string) string {
+ // cc evaluates symlinks
+ filename, err := filepath.EvalSymlinks(filename)
+ if err != nil {
+ log.Fatalf("failed to eval symlinks: %v", err)
+ }
+
+ // cc expects absolute paths
+ filename, err = filepath.Abs(filename)
+ if err != nil {
+ log.Fatalf("failed to get absolute path: %v", err)
+ }
+
+ return filename
+}