]>
Commit | Line | Data |
---|---|---|
dd529a30 | 1 | dnl # |
2 | dnl # SPL_AC_META | |
3 | dnl # Read metadata from the META file. | |
4 | dnl # | |
5 | dnl # AUTHOR: | |
6 | dnl # Chris Dunlap <cdunlap@llnl.gov> | |
7 | dnl # | |
8 | AC_DEFUN([SPL_AC_META], [ | |
9 | AC_MSG_CHECKING([metadata]) | |
10 | ||
11 | META="$srcdir/META" | |
12 | _spl_ac_meta_got_file=no | |
13 | if test -f "$META"; then | |
14 | _spl_ac_meta_got_file=yes | |
15 | ||
16 | META_NAME=_SPL_AC_META_GETVAL([(?:NAME|PROJECT|PACKAGE)]); | |
17 | if test -n "$META_NAME"; then | |
18 | AC_DEFINE_UNQUOTED([META_NAME], ["$META_NAME"], | |
19 | [Define the project name.] | |
20 | ) | |
21 | AC_SUBST([META_NAME]) | |
22 | fi | |
23 | ||
24 | META_VERSION=_SPL_AC_META_GETVAL([VERSION]); | |
25 | if test -n "$META_VERSION"; then | |
26 | AC_DEFINE_UNQUOTED([META_VERSION], ["$META_VERSION"], | |
27 | [Define the project version.] | |
28 | ) | |
29 | AC_SUBST([META_VERSION]) | |
30 | fi | |
31 | ||
32 | META_RELEASE=_SPL_AC_META_GETVAL([RELEASE]); | |
33 | if test -n "$META_RELEASE"; then | |
34 | AC_DEFINE_UNQUOTED([META_RELEASE], ["$META_RELEASE"], | |
35 | [Define the project release.] | |
36 | ) | |
37 | AC_SUBST([META_RELEASE]) | |
38 | fi | |
39 | ||
40 | if test -n "$META_NAME" -a -n "$META_VERSION"; then | |
41 | META_ALIAS="$META_NAME-$META_VERSION" | |
42 | test -n "$META_RELEASE" && | |
43 | META_ALIAS="$META_ALIAS-$META_RELEASE" | |
44 | AC_DEFINE_UNQUOTED([META_ALIAS], | |
45 | ["$META_ALIAS"], | |
46 | [Define the project alias string.] | |
47 | ) | |
48 | AC_SUBST([META_ALIAS]) | |
49 | fi | |
50 | ||
51 | META_DATE=_SPL_AC_META_GETVAL([DATE]); | |
52 | if test -n "$META_DATE"; then | |
53 | AC_DEFINE_UNQUOTED([META_DATE], ["$META_DATE"], | |
54 | [Define the project release date.] | |
55 | ) | |
56 | AC_SUBST([META_DATE]) | |
57 | fi | |
58 | ||
59 | META_AUTHOR=_SPL_AC_META_GETVAL([AUTHOR]); | |
60 | if test -n "$META_AUTHOR"; then | |
61 | AC_DEFINE_UNQUOTED([META_AUTHOR], ["$META_AUTHOR"], | |
62 | [Define the project author.] | |
63 | ) | |
64 | AC_SUBST([META_AUTHOR]) | |
65 | fi | |
66 | ||
67 | m4_pattern_allow([^LT_(CURRENT|REVISION|AGE)$]) | |
68 | META_LT_CURRENT=_SPL_AC_META_GETVAL([LT_CURRENT]); | |
69 | META_LT_REVISION=_SPL_AC_META_GETVAL([LT_REVISION]); | |
70 | META_LT_AGE=_SPL_AC_META_GETVAL([LT_AGE]); | |
71 | if test -n "$META_LT_CURRENT" \ | |
72 | -o -n "$META_LT_REVISION" \ | |
73 | -o -n "$META_LT_AGE"; then | |
74 | test -n "$META_LT_CURRENT" || META_LT_CURRENT="0" | |
75 | test -n "$META_LT_REVISION" || META_LT_REVISION="0" | |
76 | test -n "$META_LT_AGE" || META_LT_AGE="0" | |
77 | AC_DEFINE_UNQUOTED([META_LT_CURRENT], | |
78 | ["$META_LT_CURRENT"], | |
79 | [Define the libtool library 'current' | |
80 | version information.] | |
81 | ) | |
82 | AC_DEFINE_UNQUOTED([META_LT_REVISION], | |
83 | ["$META_LT_REVISION"], | |
84 | [Define the libtool library 'revision' | |
85 | version information.] | |
86 | ) | |
87 | AC_DEFINE_UNQUOTED([META_LT_AGE], ["$META_LT_AGE"], | |
88 | [Define the libtool library 'age' | |
89 | version information.] | |
90 | ) | |
91 | AC_SUBST([META_LT_CURRENT]) | |
92 | AC_SUBST([META_LT_REVISION]) | |
93 | AC_SUBST([META_LT_AGE]) | |
94 | fi | |
95 | fi | |
96 | ||
97 | AC_MSG_RESULT([$_spl_ac_meta_got_file]) | |
98 | ] | |
99 | ) | |
100 | ||
101 | AC_DEFUN([_SPL_AC_META_GETVAL], | |
102 | [`perl -n\ | |
103 | -e "BEGIN { \\$key=shift @ARGV; }"\ | |
104 | -e "next unless s/^\s*\\$key@<:@:=@:>@//i;"\ | |
105 | -e "s/^((?:@<:@^'\"#@:>@*(?:(@<:@'\"@:>@)@<:@^\2@:>@*\2)*)*)#.*/\\@S|@1/;"\ | |
106 | -e "s/^\s+//;"\ | |
107 | -e "s/\s+$//;"\ | |
108 | -e "s/^(@<:@'\"@:>@)(.*)\1/\\@S|@2/;"\ | |
109 | -e "\\$val=\\$_;"\ | |
110 | -e "END { print \\$val if defined \\$val; }"\ | |
111 | '$1' $META`]dnl | |
112 | ) |