code: func (g *GenOpts) TargetPath() string {
  	var tgt string
  	if g.Target == "" {
  		tgt = "." // That's for windows
  	} else {
  		tgt = g.Target
  	}
  	tgtAbs, _ := filepath.Abs(tgt)
  	srvPkg := filepath.FromSlash(g.LanguageOpts.ManglePackagePath(g.ServerPackage, "server"))
  	srvrAbs := filepath.Join(tgtAbs, srvPkg)
  	tgtRel, _ := filepath.Rel(srvrAbs, filepath.Dir(tgtAbs))
  	tgtRel = filepath.Join(tgtRel, filepath.Base(tgtAbs))
  	return tgtRel
  }
docs: // TargetPath returns the target generation path relative to the server package.
  // This method is used by templates, e.g. with {{ .TargetPath }}
  //
  // Errors cases are prevented by calling CheckOpts beforehand.
  //
  // Example:
  // Target: ${PWD}/tmp
  // ServerPackage: abc/efg
  //
  // Server is generated in ${PWD}/tmp/abc/efg
  // relative TargetPath returned: ../../../tmp
  //