From: Rico Tzschichholz Date: Mon, 20 May 2019 18:53:02 +0000 (+0200) Subject: vala: Strip "basedir" from Source.filename attribute X-Git-Tag: 0.45.1~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=96cc5c9c2aa21d063656773c4ab436655991c302;p=thirdparty%2Fvala.git vala: Strip "basedir" from Source.filename attribute This is gives some control over the written relative filenames and fixes make distcheck due of out-of-source-dir building. --- diff --git a/tests/fastvapi/Makefile.am b/tests/fastvapi/Makefile.am index e58523ba4..b960ac4b1 100644 --- a/tests/fastvapi/Makefile.am +++ b/tests/fastvapi/Makefile.am @@ -5,6 +5,7 @@ check-fastvapi: $(top_builddir)/compiler/valac -C \ --disable-version-header \ --fast-vapi fastvapitest.vapi \ + --basedir $(srcdir) \ $(srcdir)/fastvapitest.vala; \ tail -n +3 fastvapitest.vapi | diff -wu $(srcdir)/fastvapitest.vapi-expected - || exit 1; \ rm -f fastvapitest.vapi fastvapitest.c diff --git a/tests/fastvapi/fastvapitest.vapi-expected b/tests/fastvapi/fastvapitest.vapi-expected index 55540ab08..0542a563d 100644 --- a/tests/fastvapi/fastvapitest.vapi-expected +++ b/tests/fastvapi/fastvapitest.vapi-expected @@ -1,44 +1,44 @@ using GLib; -[Source (filename = "./fastvapitest.vala", line = 1, column = 1)] +[Source (filename = "fastvapitest.vala", line = 1, column = 1)] namespace FastVapi { - [Source (filename = "./fastvapitest.vala", line = 23, column = 2)] + [Source (filename = "fastvapitest.vala", line = 23, column = 2)] public class Test : Object { - [Source (filename = "./fastvapitest.vala", line = 26, column = 3)] + [Source (filename = "fastvapitest.vala", line = 26, column = 3)] public int field; - [Source (filename = "./fastvapitest.vala", line = 30, column = 3)] + [Source (filename = "fastvapitest.vala", line = 30, column = 3)] public Test (); - [Source (filename = "./fastvapitest.vala", line = 33, column = 3)] + [Source (filename = "fastvapitest.vala", line = 33, column = 3)] public void method (); - [Source (filename = "./fastvapitest.vala", line = 28, column = 3)] + [Source (filename = "fastvapitest.vala", line = 28, column = 3)] public string property { get; set construct; } - [Source (filename = "./fastvapitest.vala", line = 24, column = 3)] + [Source (filename = "fastvapitest.vala", line = 24, column = 3)] public signal void some_signal (int param); } - [Source (filename = "./fastvapitest.vala", line = 16, column = 2)] + [Source (filename = "fastvapitest.vala", line = 16, column = 2)] public interface InterfaceTest : Object { - [Source (filename = "./fastvapitest.vala", line = 18, column = 3)] + [Source (filename = "fastvapitest.vala", line = 18, column = 3)] public abstract void method (int param); - [Source (filename = "./fastvapitest.vala", line = 17, column = 3)] + [Source (filename = "fastvapitest.vala", line = 17, column = 3)] public abstract int property { get; set construct; } } - [Source (filename = "./fastvapitest.vala", line = 12, column = 2)] + [Source (filename = "fastvapitest.vala", line = 12, column = 2)] public struct TestStruct { - [Source (filename = "./fastvapitest.vala", line = 13, column = 3)] + [Source (filename = "fastvapitest.vala", line = 13, column = 3)] public int field_name; } - [Source (filename = "./fastvapitest.vala", line = 4, column = 2)] + [Source (filename = "fastvapitest.vala", line = 4, column = 2)] public enum EnumTest { - [Source (filename = "./fastvapitest.vala", line = 5, column = 3)] + [Source (filename = "fastvapitest.vala", line = 5, column = 3)] VALUE } - [Source (filename = "./fastvapitest.vala", line = 8, column = 2)] + [Source (filename = "fastvapitest.vala", line = 8, column = 2)] public errordomain ErrorTest { - [Source (filename = "./fastvapitest.vala", line = 9, column = 3)] + [Source (filename = "fastvapitest.vala", line = 9, column = 3)] FAILED } - [Source (filename = "./fastvapitest.vala", line = 21, column = 2)] + [Source (filename = "fastvapitest.vala", line = 21, column = 2)] public delegate bool DelegateTest (int param); - [Source (filename = "./fastvapitest.vala", line = 2, column = 2)] + [Source (filename = "fastvapitest.vala", line = 2, column = 2)] public const int CONSTANT = 42; } diff --git a/vala/valacodewriter.vala b/vala/valacodewriter.vala index bdbc077a7..1f223b6b8 100644 --- a/vala/valacodewriter.vala +++ b/vala/valacodewriter.vala @@ -1630,7 +1630,11 @@ public class Vala.CodeWriter : CodeVisitor { var source_reference = node.source_reference; if (source_reference != null) { write_indent (); - stream.puts ("[Source (filename = \"%s\", line = %i, column = %i)]".printf (source_reference.file.get_relative_filename (), source_reference.begin.line, source_reference.begin.column)); + string filename = source_reference.file.filename; + if (filename.has_prefix (context.basedir)) { + filename = filename.substring (context.basedir.length + 1); + } + stream.puts ("[Source (filename = \"%s\", line = %i, column = %i)]".printf (filename, source_reference.begin.line, source_reference.begin.column)); write_newline (); } }