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