~ubuntu-branches/ubuntu/maverick/telepathy-glib/maverick

« back to all changes in this revision

Viewing changes to telepathy-glib/abi.am

  • Committer: Bazaar Package Importer
  • Author(s): Simon McVittie
  • Date: 2010-05-10 17:59:54 UTC
  • mfrom: (1.6.1 upstream) (27.1.3 sid)
  • Revision ID: james.westby@ubuntu.com-20100510175954-bxvqq3xx0sy4itmp
Tags: 0.11.5-1
New upstream version with new API/ABI

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# To be included by Makefile.am.
 
2
 
 
3
ABI_LISTS = \
 
4
    versions/0.7.0.abi \
 
5
    versions/0.7.1.abi \
 
6
    versions/0.7.2.abi \
 
7
    versions/0.7.3.abi \
 
8
    versions/0.7.5.abi \
 
9
    versions/0.7.6.abi \
 
10
    versions/0.7.7.abi \
 
11
    versions/0.7.8.abi \
 
12
    versions/0.7.9.abi \
 
13
    versions/0.7.10.abi \
 
14
    versions/0.7.12.abi \
 
15
    versions/0.7.13.abi \
 
16
    versions/0.7.14.abi \
 
17
    versions/0.7.15.abi \
 
18
    versions/0.7.16.abi \
 
19
    versions/0.7.17.abi \
 
20
    versions/0.7.18.abi \
 
21
    versions/0.7.19.abi \
 
22
    versions/0.7.20.abi \
 
23
    versions/0.7.21.abi \
 
24
    versions/0.7.23.abi \
 
25
    versions/0.7.24.abi \
 
26
    versions/0.7.26.abi \
 
27
    versions/0.7.27.abi \
 
28
    versions/0.7.28.abi \
 
29
    versions/0.7.29.abi \
 
30
    versions/0.7.30.abi \
 
31
    versions/0.7.31.abi \
 
32
    versions/0.7.32.abi \
 
33
    versions/0.7.34.abi \
 
34
    versions/0.7.35.abi \
 
35
    versions/0.7.36.abi \
 
36
    versions/0.7.37.abi \
 
37
    versions/0.9.0.abi \
 
38
    versions/0.9.2.abi \
 
39
    versions/0.11.0.abi \
 
40
    versions/0.11.1.abi \
 
41
    versions/0.11.3.abi \
 
42
    versions/0.11.4.abi \
 
43
    versions/0.11.5.abi
 
44
 
 
45
# The quoting here is unnecessary but harmless, and has the useful side-effect
 
46
# that vim quickfix mode (:make) doesn't interpret the libtool --mode=link
 
47
# command as an error message in a bizarrely named file
 
48
libtelepathy_glib_la_LDFLAGS = \
 
49
    -version-info "$(LT_CURRENT)":"$(LT_REVISION)":"$(LT_AGE)"
 
50
libtelepathy_glib_la_LIBADD = libtelepathy-glib-internal.la
 
51
nodist_libtelepathy_glib_la_SOURCES =
 
52
libtelepathy_glib_la_DEPENDENCIES = libtelepathy-glib-internal.la abi.am
 
53
 
 
54
if HAVE_LD_VERSION_SCRIPT
 
55
nodist_libtelepathy_glib_la_SOURCES += _gen/version-script.txt
 
56
libtelepathy_glib_la_DEPENDENCIES += _gen/version-script.txt _gen/abi.txt
 
57
 
 
58
if OFFICIAL_RELEASE
 
59
# don't allow undocumented ABI
 
60
MAKE_VERSION_SCRIPT_FLAGS =
 
61
else
 
62
# allow new ABI, and silently put it in a dummy version (which can be used to
 
63
# check whether binaries have been linked against unguaranteed ABI)
 
64
MAKE_VERSION_SCRIPT_FLAGS = \
 
65
    --unreleased-version=TELEPATHY_GLIB_@VERSION@_UNRELEASED
 
66
endif
 
67
 
 
68
_gen/version-script.txt: $(ABI_LISTS) _gen/abi.txt abi.am \
 
69
        $(top_srcdir)/tools/make-version-script.py
 
70
        $(AM_V_GEN)$(PYTHON) $(top_srcdir)/tools/make-version-script.py \
 
71
                 --symbols=_gen/abi.txt $(MAKE_VERSION_SCRIPT_FLAGS) \
 
72
                 $(ABI_LISTS:%=$(srcdir)/%) > $@
 
73
        $(PYTHON) $(top_srcdir)/tools/make-version-script.py \
 
74
                 --symbols=_gen/abi.txt $(MAKE_VERSION_SCRIPT_FLAGS) \
 
75
                 --dpkg "libtelepathy-glib.so.0 libtelepathy-glib0 #MINVER#" \
 
76
                 --dpkg-build-depends-package "libtelepathy-glib-dev" \
 
77
                 $(ABI_LISTS:%=$(srcdir)/%) > _gen/libtelepathy-glib0.symbols
 
78
        sed -n -e "s/^[  ]*\\(tp_.*\\);/\\1/p" < $@ > _gen/versioned-abi.tmp
 
79
        sort -u < _gen/versioned-abi.tmp > _gen/versioned-abi.txt
 
80
        : # the versioned API should always match the ^tp API
 
81
        diff -c _gen/versioned-abi.txt _gen/abi.txt
 
82
 
 
83
_gen/abi.txt: libtelepathy-glib-internal.la abi.am
 
84
        $(NM) .libs/libtelepathy-glib-internal.a > _gen/abi.nm
 
85
        grep " [DT] " < _gen/abi.nm > _gen/abi.funcs
 
86
        cut -d" " -f3 < _gen/abi.funcs > _gen/abi.funcnames
 
87
        grep "^tp" < _gen/abi.funcnames > _gen/abi.tpfuncnames
 
88
        $(AM_V_GEN)sort -u < _gen/abi.tpfuncnames > $@
 
89
 
 
90
libtelepathy_glib_la_LDFLAGS += \
 
91
    $(VERSION_SCRIPT_ARG)=_gen/version-script.txt
 
92
 
 
93
else # !HAVE_LD_VERSION_SCRIPT
 
94
 
 
95
libtelepathy_glib_la_LDFLAGS += -export-symbols-regex '^tp'
 
96
 
 
97
endif # !HAVE_LD_VERSION_SCRIPT
 
98
 
 
99
# vim:set ft=automake: