]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Add version suffix to installed files to allow parallel installation
authorJürg Billeter <j@bitron.ch>
Thu, 5 Aug 2010 08:17:48 +0000 (10:17 +0200)
committerJürg Billeter <j@bitron.ch>
Thu, 5 Aug 2010 19:20:04 +0000 (21:20 +0200)
19 files changed:
Makefile.am
ccode/Makefile.am
codegen/Makefile.am
compiler/Makefile.am
compiler/valacompiler.vala
configure.ac
doc/Makefile.am
doc/vala/Makefile.am
gee/Makefile.am
gobject-introspection/Makefile.am
vala.pc.in [moved from vala-1.0.pc.in with 70% similarity]
vala/Makefile.am
vala/valacodecontext.vala
vapi/.gitignore
vapi/Makefile.am
vapi/config.vapi
vapigen/Makefile.am
vapigen/vala-gen-introspect/Makefile.am
vapigen/vala-gen-introspect/vala-gen-introspect.in

index b59d5d179643e54684fda856308fdd4b5d8ffc51..0e0f9bf00a99278667e39624ae0722b4ad572740 100644 (file)
@@ -34,7 +34,10 @@ DIST_SUBDIRS = \
        $(NULL)
 
 pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = vala-1.0.pc
+pkgconfig_DATA = vala@PACKAGE_SUFFIX@.pc
+
+vala@PACKAGE_SUFFIX@.pc: vala.pc
+       cp $< $@
 
 .PHONY: bootstrap
 bootstrap: all
@@ -89,11 +92,15 @@ gen-ChangeLog:
          mv $(distdir)/cl-t $(distdir)/ChangeLog;                      \
        fi
 
+CLEANFILES = \
+       vala@PACKAGE_SUFFIX@.pc
+       $(NULL)
+
 EXTRA_DIST = \
        ChangeLog.pre-0-4 \
        ChangeLog.pre-0-5-7 \
        MAINTAINERS \
-       vala-1.0.pc.in \
+       vala.pc.in \
        .version \
        build-aux/git-version-gen \
        build-aux/gitlog-to-changelog \
index 486a5ddc4dc03ee7999b60ed597d57f9cf8b0af3..1fd4a0dfce7076fcd59eb7979882815110f7d10a 100644 (file)
@@ -70,7 +70,7 @@ libvalaccode_la_SOURCES = \
        $(libvalaccode_la_VALASOURCES:.vala=.c) \
        $(NULL)
 
-ccodeincludedir = $(includedir)/vala-1.0
+ccodeincludedir = $(includedir)/vala@PACKAGE_SUFFIX@
 
 ccodeinclude_HEADERS = \
        valaccode.h \
index 49406d1d2e5bebee1a156357dad185f57eb8ea49..e9f661e45db266e1c0e68a83e89943f46e327717 100644 (file)
@@ -11,7 +11,7 @@ AM_CPPFLAGS = \
 BUILT_SOURCES = codegen.vala.stamp
 
 lib_LTLIBRARIES = \
-       libvala.la
+       libvala@PACKAGE_SUFFIX@.la
        $(NULL)
 
 libvala_la_VALASOURCES = \
@@ -62,12 +62,12 @@ libvala_la_VALASOURCES = \
        valatyperegisterfunction.vala \
        $(NULL)
 
-libvala_la_SOURCES = \
+libvala@PACKAGE_SUFFIX@_la_SOURCES = \
        codegen.vala.stamp \
        $(libvala_la_VALASOURCES:.vala=.c) \
        $(NULL)
 
-codegenincludedir = $(includedir)/vala-1.0
+codegenincludedir = $(includedir)/vala@PACKAGE_SUFFIX@
 
 codegeninclude_HEADERS = \
        valacodegen.h \
@@ -77,9 +77,9 @@ codegen.vapi codegen.vala.stamp: $(libvala_la_VALASOURCES)
        $(VALA_V)$(VALAC) $(COVERAGE_VALAFLAGS) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir $(srcdir)/../gee --pkg gee --vapidir $(srcdir)/../ccode --pkg ccode --vapidir $(srcdir)/../vala --pkg vala -H valacodegen.h --library codegen $^
        @touch $@
 
-libvala_la_LDFLAGS = -no-undefined
+libvala@PACKAGE_SUFFIX@_la_LDFLAGS = -no-undefined
 
-libvala_la_LIBADD = \
+libvala@PACKAGE_SUFFIX@_la_LIBADD = \
        $(COVERAGE_LIBS) \
        $(GLIB_LIBS) \
        ../vala/libvalacore.la \
index bbc9335804271f3db8b98a8277363ad1d7e43f7d..d6e7f819b8012e6c33a558bb37a8b97ba090297d 100644 (file)
@@ -32,13 +32,17 @@ valac.vala.stamp: $(valac_VALASOURCES)
 valac_LDADD = \
        $(COVERAGE_LIBS) \
        $(GLIB_LIBS) \
-       ../codegen/libvala.la \
+       ../codegen/libvala@PACKAGE_SUFFIX@.la \
        $(NULL)
 
 EXTRA_DIST = $(valac_VALASOURCES) valac.vala.stamp
 
 install-exec-hook:
-       cd $(DESTDIR)$(bindir) && $(LN_S) -f valac$(EXEEXT) vala$(EXEEXT)
+       cd $(DESTDIR)$(bindir) && $(LN_S) -f valac@PACKAGE_SUFFIX@$(EXEEXT) vala@PACKAGE_SUFFIX@$(EXEEXT)
+if ENABLE_UNVERSIONED
+       cd $(DESTDIR)$(bindir) && $(LN_S) -f valac@PACKAGE_SUFFIX@$(EXEEXT) valac$(EXEEXT)
+       cd $(DESTDIR)$(bindir) && $(LN_S) -f vala@PACKAGE_SUFFIX@$(EXEEXT) vala$(EXEEXT)
+endif
 
 MAINTAINERCLEANFILES = \
        $(valac_VALASOURCES:.vala=.c) \
index 97cca882165900a26016a7cd93e24090ef7e580b..0718f14a2c53e7f4c681032b185ec70f53ab5f02 100644 (file)
@@ -675,7 +675,7 @@ class Vala.Compiler {
        }
 
        static int main (string[] args) {
-               if (Path.get_basename (args[0]) == "vala") {
+               if (Path.get_basename (args[0]) == "vala" || Path.get_basename (args[0]) == "vala" + Config.PACKAGE_SUFFIX) {
                        return run_source (args);
                }
 
index 3522be59ad3cd3f46ee9f5072cfa5bcb163c4e3b..6ebe279ce6196996c6d1be539288ec085b8244a4 100644 (file)
@@ -6,6 +6,14 @@ AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([dist-bzip2])
 AM_MAINTAINER_MODE
 
+PACKAGE_SUFFIX=-0.10
+AC_SUBST(PACKAGE_SUFFIX)
+AC_DEFINE_UNQUOTED(PACKAGE_SUFFIX, "$PACKAGE_SUFFIX", [Define to the suffix of this package])
+
+program_transform_name="s,\$\$,${PACKAGE_SUFFIX},"
+
+AC_SUBST(pkgdatadir, [${datadir}/vala${PACKAGE_SUFFIX}])
+
 # Checks for programs.
 AC_PROG_CC
 AM_PROG_CC_C_O
@@ -31,6 +39,9 @@ AC_SUBST(CFLAGS)
 AC_SUBST(CPPFLAGS)
 AC_SUBST(LDFLAGS)
 
+AC_ARG_ENABLE(unversioned, AS_HELP_STRING([--disable-unversioned], [Disable unversioned binaries]), enable_unversioned=$enableval, enable_unversioned=yes)
+AM_CONDITIONAL(ENABLE_UNVERSIONED, test x$enable_unversioned = xyes)
+
 AC_ARG_ENABLE(coverage, AS_HELP_STRING([--enable-coverage], [Enable coverage analysis]), enable_coverage=$enableval, enable_coverage=no)
 AM_CONDITIONAL(ENABLE_COVERAGE, test x$enable_coverage = xyes)
 
@@ -51,9 +62,9 @@ AC_ARG_ENABLE(vapigen, AS_HELP_STRING([--enable-vapigen], [Enable VAPI generator
 AM_CONDITIONAL(ENABLE_VAPIGEN, test x$enable_vapigen = xyes)
 
 if test "$enable_vapigen" = "yes"; then
-  vapigen_decl='vapigen=${bindir}/vapigen'
-  gen_introspect_decl='gen_introspect=${libdir}/vala/gen-introspect'
-  vala_gen_introspect_decl='vala_gen_introspect=${bindir}/vala-gen-introspect'
+  vapigen_decl="vapigen=\${bindir}/vapigen${PACKAGE_SUFFIX}"
+  gen_introspect_decl="gen_introspect=\${libdir}/vala${PACKAGE_SUFFIX}/gen-introspect${PACKAGE_SUFFIX}"
+  vala_gen_introspect_decl="vala_gen_introspect=\${bindir}/vala-gen-introspect${PACKAGE_SUFFIX}"
 else
   vapigen_decl=''
   gen_introspect_decl=''
@@ -86,7 +97,7 @@ AM_CONDITIONAL(HAVE_XSLTPROC, test "$XSLTPROC" != :)
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
 AC_CONFIG_FILES([Makefile
-           vala-1.0.pc
+           vala.pc
            gee/Makefile
            ccode/Makefile
            vala/Makefile
index d81c58b6b1d5f2a6fe7fd17bc933812d085f383f..71d979f47df22c905447fbe8ff7d35080e72ef8e 100644 (file)
@@ -22,3 +22,11 @@ EXTRA_DIST = \
        vapigen.1 \
        $(NULL)
 
+if ENABLE_UNVERSIONED
+install-data-hook:
+       cd $(DESTDIR)$(man1dir) && $(LN_S) -f valac@PACKAGE_SUFFIX@.1 valac.1
+if ENABLE_VAPIGEN
+       cd $(DESTDIR)$(man1dir) && $(LN_S) -f vala-gen-introspect@PACKAGE_SUFFIX@.1 vala-gen-introspect.1
+       cd $(DESTDIR)$(man1dir) && $(LN_S) -f vapigen@PACKAGE_SUFFIX@.1 vapigen.1
+endif
+endif
index c0a9a0b91e1c82d7b8873ba07638196f446a9252..9e359c985b68416fffff3278f1e58cf1e07a968c 100644 (file)
@@ -1,6 +1,6 @@
 NULL =
 
-bookdir=$(datadir)/devhelp/books/vala
+bookdir=$(datadir)/devhelp/books/vala@PACKAGE_SUFFIX@
 
 chapter_data = \
        overview.html \
index 82e7e366ca101e940c644142873d94d53b98b541..15f3e9b69dde4d403895fe67640ed42519873e7b 100644 (file)
@@ -29,7 +29,7 @@ libgee_la_SOURCES = \
        $(libgee_la_VALASOURCES:.vala=.c) \
        $(NULL)
 
-geeincludedir = $(includedir)/vala-1.0
+geeincludedir = $(includedir)/vala@PACKAGE_SUFFIX@
 
 geeinclude_HEADERS = \
        valagee.h \
index e10980112d21025015d6fdee3bf283a17aef88ab..9b30e1f27f4408dbe55d1fe9ba0ad42090a94530 100644 (file)
@@ -25,7 +25,7 @@ libgidl_la_LIBADD = \
        $(GMODULE_LIBS) \
        $(NULL)
 
-pkglibexecdir = $(libdir)/vala
+pkglibexecdir = $(libdir)/vala@PACKAGE_SUFFIX@
 pkglibexec_PROGRAMS = gen-introspect
 
 BUILT_SOURCES = scannerparser.h
similarity index 70%
rename from vala-1.0.pc.in
rename to vala.pc.in
index 3d52031cb36ca9bfac68c6799cd890cfa1daf146..4e96afad7dc5f6f3c507a6bfb526734952586d68 100644 (file)
@@ -5,7 +5,7 @@ bindir=@bindir@
 includedir=@includedir@
 datarootdir=@datarootdir@
 datadir=@datadir@
-vapidir=@datadir@/vala/vapi
+vapidir=@datadir@/vala@PACKAGE_SUFFIX@/vapi
 
 @vapigen_decl@
 @gen_introspect_decl@
@@ -15,5 +15,5 @@ Name: Vala
 Description: The Vala compiler library
 Version: @VERSION@
 Requires: glib-2.0 gobject-2.0
-Libs: -L${libdir} -lvala
-Cflags: -I${includedir}/vala-1.0
+Libs: -L${libdir} -lvala@PACKAGE_SUFFIX@
+Cflags: -I${includedir}/vala@PACKAGE_SUFFIX@
index 7148e44feb150031555d4dbd0cf16cc4cb916980..83acbd595b6802a56b6912dcdc7df51eb21acdd3 100644 (file)
@@ -167,7 +167,7 @@ libvalacore_la_SOURCES = \
        $(libvalacore_la_VALASOURCES:.vala=.c) \
        $(NULL)
 
-valaincludedir = $(includedir)/vala-1.0
+valaincludedir = $(includedir)/vala@PACKAGE_SUFFIX@
 
 valainclude_HEADERS = \
        vala.h \
index cd32378ba0bb3945e075b0d494ccde4227ac496b..476142c178f692c14ba5dd76917299c7aadeec2a 100644 (file)
@@ -315,7 +315,7 @@ public class Vala.CodeContext {
        }
 
        public string? get_package_path (string pkg, string[] directories) {
-               var path = get_file_path (pkg + ".vapi", "vala/vapi", directories);
+               var path = get_file_path (pkg + ".vapi", "vala" + Config.PACKAGE_SUFFIX + "/vapi", "vala/vapi", directories);
 
                if (path == null) {
                        /* last chance: try the package compiled-in vapi dir */
@@ -329,10 +329,10 @@ public class Vala.CodeContext {
        }
 
        public string? get_gir_path (string gir, string[] directories) {
-               return get_file_path (gir + ".gir", "gir-1.0", directories);
+               return get_file_path (gir + ".gir", "gir-1.0", null, directories);
        }
 
-       string? get_file_path (string basename, string data_dir, string[] directories) {
+       string? get_file_path (string basename, string versioned_data_dir, string? data_dir, string[] directories) {
                string filename = null;
 
                if (directories != null) {
@@ -345,12 +345,21 @@ public class Vala.CodeContext {
                }
 
                foreach (string dir in Environment.get_system_data_dirs ()) {
-                       filename = Path.build_filename (dir, data_dir, basename);
+                       filename = Path.build_filename (dir, versioned_data_dir, basename);
                        if (FileUtils.test (filename, FileTest.EXISTS)) {
                                return filename;
                        }
                }
 
+               if (data_dir != null) {
+                       foreach (string dir in Environment.get_system_data_dirs ()) {
+                               filename = Path.build_filename (dir, data_dir, basename);
+                               if (FileUtils.test (filename, FileTest.EXISTS)) {
+                                       return filename;
+                               }
+                       }
+               }
+
                return null;
        }
 }
index 0785bd7778972ffb5cf9fabda965d63912567d66..9fa8bca18a7d5c5f87d640911565f6379814f50b 100644 (file)
@@ -1 +1 @@
-vala-1.0.vapi
+vala-*.vapi
index 83db45d8c44cfca3d224a95bec69ec7d3825f600..373f5d9bd0ea6e6b141b3483e2c2e9084aaede57 100644 (file)
@@ -2,7 +2,7 @@ NULL =
 
 vapidir = $(pkgdatadir)/vapi
 
-vala-1.0.vapi: ../gee/gee.vapi ../ccode/ccode.vapi ../vala/vala.vapi ../codegen/codegen.vapi
+vala@PACKAGE_SUFFIX@.vapi: ../gee/gee.vapi ../ccode/ccode.vapi ../vala/vala.vapi ../codegen/codegen.vapi
        cat $^ > $@
 
 dist_vapi_DATA = \
@@ -205,7 +205,7 @@ dist_vapi_DATA = \
        unique-1.0.deps \
        unique-1.0.vapi \
        v4l2.vapi \
-       vala-1.0.vapi \
+       vala@PACKAGE_SUFFIX@.vapi \
        vte.deps \
        vte.vapi \
        webkit-1.0.deps \
index 8e14bf06ed12a3881923f0c9bbd3f56d3d806e40..2c6df9e6bf0daa66e503f7f8198cb85f083754fc 100644 (file)
@@ -1,6 +1,6 @@
 /* config.vala
  *
- * Copyright (C) 2006-2007  Jürg Billeter
+ * Copyright (C) 2006-2010  Jürg Billeter
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -25,4 +25,5 @@ namespace Config {
        [CCode (cheader_filename = "version.h")]
        public const string BUILD_VERSION;
        public const string PACKAGE_DATADIR;
+       public const string PACKAGE_SUFFIX;
 }
index dad0d5d6ddcb25b1a42696112c781e762c2abbbd..2f08351faaea369fd9c9b5d1a3ebc8fa657de38d 100644 (file)
@@ -50,18 +50,24 @@ vapicheck.vala.stamp: $(vapicheck_VALASOURCES)
 
 vapigen_LDADD = \
        $(GLIB_LIBS) \
-       ../codegen/libvala.la \
+       ../codegen/libvala@PACKAGE_SUFFIX@.la \
        ../gobject-introspection/libgidl.la \
        $(NULL)
 
 vapicheck_LDADD = \
        $(GLIB_LIBS) \
-       ../codegen/libvala.la \
+       ../codegen/libvala@PACKAGE_SUFFIX@.la \
        ../gobject-introspection/libgidl.la \
        $(NULL)
 
 EXTRA_DIST = $(vapigen_VALASOURCES) $(vapicheck_VALASOURCES) vapigen.vala.stamp vapicheck.vala.stamp
 
+if ENABLE_UNVERSIONED
+install-exec-hook:
+       cd $(DESTDIR)$(bindir) && $(LN_S) -f vapigen@PACKAGE_SUFFIX@$(EXEEXT) vapigen$(EXEEXT)
+       cd $(DESTDIR)$(bindir) && $(LN_S) -f vapicheck@PACKAGE_SUFFIX@$(EXEEXT) vapicheck$(EXEEXT)
+endif
+
 MAINTAINERCLEANFILES = \
        $(vapigen_VALASOURCES:.vala=.c) \
        $(vapicheck_VALASOURCES:.vala=.c) \
index 91dea996593da0f0569c35bf6f7fc8fbb653d00a..4f0c47186a998b0106fe08787a712bf81abf78d5 100644 (file)
@@ -8,3 +8,7 @@ EXTRA_DIST = \
        vala-gen-introspect.in
        $(NULL)
 
+if ENABLE_UNVERSIONED
+install-exec-hook:
+       cd $(DESTDIR)$(bindir) && $(LN_S) -f vala-gen-introspect@PACKAGE_SUFFIX@$(EXEEXT) vala-gen-introspect$(EXEEXT)
+endif
index 538f43d98ffb28cf1642cf88117f310a4c1ce436..5a93986a4d33b98c197f316bfaf2ae29db61ccb0 100755 (executable)
@@ -3,7 +3,7 @@
 prefix=@prefix@
 exec_prefix=@exec_prefix@
 libdir=@libdir@
-pkglibdir=${libdir}/vala
+pkglibdir=${libdir}/vala@PACKAGE_SUFFIX@
 
 if [ $# -ne 2 ]
 then