diff options
author | Jürg Billeter <j@bitron.ch> | 2010-08-05 10:17:48 +0200 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2010-08-05 21:20:04 +0200 |
commit | abbcceab2fc3b674d1bb5d056f249c11cd5079a4 (patch) | |
tree | 90e6ecee787f5828fb669671dccbb8027c1321df | |
parent | 294b374af6e37cdac8ffb2b2db8fed72d323edb3 (diff) | |
download | vala-abbcceab2fc3b674d1bb5d056f249c11cd5079a4.tar.gz |
Add version suffix to installed files to allow parallel installation
-rw-r--r-- | Makefile.am | 11 | ||||
-rw-r--r-- | ccode/Makefile.am | 2 | ||||
-rw-r--r-- | codegen/Makefile.am | 10 | ||||
-rw-r--r-- | compiler/Makefile.am | 8 | ||||
-rw-r--r-- | compiler/valacompiler.vala | 2 | ||||
-rw-r--r-- | configure.ac | 19 | ||||
-rw-r--r-- | doc/Makefile.am | 8 | ||||
-rw-r--r-- | doc/vala/Makefile.am | 2 | ||||
-rw-r--r-- | gee/Makefile.am | 2 | ||||
-rw-r--r-- | gobject-introspection/Makefile.am | 2 | ||||
-rw-r--r-- | vala.pc.in (renamed from vala-1.0.pc.in) | 6 | ||||
-rw-r--r-- | vala/Makefile.am | 2 | ||||
-rw-r--r-- | vala/valacodecontext.vala | 17 | ||||
-rw-r--r-- | vapi/.gitignore | 2 | ||||
-rw-r--r-- | vapi/Makefile.am | 4 | ||||
-rw-r--r-- | vapi/config.vapi | 3 | ||||
-rw-r--r-- | vapigen/Makefile.am | 10 | ||||
-rw-r--r-- | vapigen/vala-gen-introspect/Makefile.am | 4 | ||||
-rwxr-xr-x | vapigen/vala-gen-introspect/vala-gen-introspect.in | 2 |
19 files changed, 83 insertions, 33 deletions
diff --git a/Makefile.am b/Makefile.am index b59d5d179..0e0f9bf00 100644 --- a/Makefile.am +++ b/Makefile.am @@ -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 \ diff --git a/ccode/Makefile.am b/ccode/Makefile.am index 486a5ddc4..1fd4a0dfc 100644 --- a/ccode/Makefile.am +++ b/ccode/Makefile.am @@ -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 \ diff --git a/codegen/Makefile.am b/codegen/Makefile.am index 49406d1d2..e9f661e45 100644 --- a/codegen/Makefile.am +++ b/codegen/Makefile.am @@ -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 \ diff --git a/compiler/Makefile.am b/compiler/Makefile.am index bbc933580..d6e7f819b 100644 --- a/compiler/Makefile.am +++ b/compiler/Makefile.am @@ -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) \ diff --git a/compiler/valacompiler.vala b/compiler/valacompiler.vala index 97cca8821..0718f14a2 100644 --- a/compiler/valacompiler.vala +++ b/compiler/valacompiler.vala @@ -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); } diff --git a/configure.ac b/configure.ac index 3522be59a..6ebe279ce 100644 --- a/configure.ac +++ b/configure.ac @@ -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 diff --git a/doc/Makefile.am b/doc/Makefile.am index d81c58b6b..71d979f47 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -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 diff --git a/doc/vala/Makefile.am b/doc/vala/Makefile.am index c0a9a0b91..9e359c985 100644 --- a/doc/vala/Makefile.am +++ b/doc/vala/Makefile.am @@ -1,6 +1,6 @@ NULL = -bookdir=$(datadir)/devhelp/books/vala +bookdir=$(datadir)/devhelp/books/vala@PACKAGE_SUFFIX@ chapter_data = \ overview.html \ diff --git a/gee/Makefile.am b/gee/Makefile.am index 82e7e366c..15f3e9b69 100644 --- a/gee/Makefile.am +++ b/gee/Makefile.am @@ -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 \ diff --git a/gobject-introspection/Makefile.am b/gobject-introspection/Makefile.am index e10980112..9b30e1f27 100644 --- a/gobject-introspection/Makefile.am +++ b/gobject-introspection/Makefile.am @@ -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 diff --git a/vala-1.0.pc.in b/vala.pc.in index 3d52031cb..4e96afad7 100644 --- a/vala-1.0.pc.in +++ b/vala.pc.in @@ -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@ diff --git a/vala/Makefile.am b/vala/Makefile.am index 7148e44fe..83acbd595 100644 --- a/vala/Makefile.am +++ b/vala/Makefile.am @@ -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 \ diff --git a/vala/valacodecontext.vala b/vala/valacodecontext.vala index cd32378ba..476142c17 100644 --- a/vala/valacodecontext.vala +++ b/vala/valacodecontext.vala @@ -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; } } diff --git a/vapi/.gitignore b/vapi/.gitignore index 0785bd777..9fa8bca18 100644 --- a/vapi/.gitignore +++ b/vapi/.gitignore @@ -1 +1 @@ -vala-1.0.vapi +vala-*.vapi diff --git a/vapi/Makefile.am b/vapi/Makefile.am index 83db45d8c..373f5d9bd 100644 --- a/vapi/Makefile.am +++ b/vapi/Makefile.am @@ -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 \ diff --git a/vapi/config.vapi b/vapi/config.vapi index 8e14bf06e..2c6df9e6b 100644 --- a/vapi/config.vapi +++ b/vapi/config.vapi @@ -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; } diff --git a/vapigen/Makefile.am b/vapigen/Makefile.am index dad0d5d6d..2f08351fa 100644 --- a/vapigen/Makefile.am +++ b/vapigen/Makefile.am @@ -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) \ diff --git a/vapigen/vala-gen-introspect/Makefile.am b/vapigen/vala-gen-introspect/Makefile.am index 91dea9965..4f0c47186 100644 --- a/vapigen/vala-gen-introspect/Makefile.am +++ b/vapigen/vala-gen-introspect/Makefile.am @@ -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 diff --git a/vapigen/vala-gen-introspect/vala-gen-introspect.in b/vapigen/vala-gen-introspect/vala-gen-introspect.in index 538f43d98..5a93986a4 100755 --- a/vapigen/vala-gen-introspect/vala-gen-introspect.in +++ b/vapigen/vala-gen-introspect/vala-gen-introspect.in @@ -3,7 +3,7 @@ prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ -pkglibdir=${libdir}/vala +pkglibdir=${libdir}/vala@PACKAGE_SUFFIX@ if [ $# -ne 2 ] then |