3 dnl # Read metadata from the META file.
6 dnl # Chris Dunlap <cdunlap@llnl.gov>
8 AC_DEFUN([ZFS_AC_META], [
9 AC_MSG_CHECKING([metadata])
12 _zfs_ac_meta_got_file=no
13 if test -f "$META"; then
14 _zfs_ac_meta_got_file=yes
16 META_NAME=_ZFS_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.]
24 META_VERSION=_ZFS_AC_META_GETVAL([VERSION]);
25 if test -n "$META_VERSION"; then
26 AC_DEFINE_UNQUOTED([META_VERSION], ["$META_VERSION"],
27 [Define the project version.]
29 AC_SUBST([META_VERSION])
32 META_RELEASE=_ZFS_AC_META_GETVAL([RELEASE]);
33 if test -n "$META_RELEASE"; then
34 AC_DEFINE_UNQUOTED([META_RELEASE], ["$META_RELEASE"],
35 [Define the project release.]
37 AC_SUBST([META_RELEASE])
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],
46 [Define the project alias string.]
48 AC_SUBST([META_ALIAS])
51 META_DATE=_ZFS_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.]
59 META_AUTHOR=_ZFS_AC_META_GETVAL([AUTHOR]);
60 if test -n "$META_AUTHOR"; then
61 AC_DEFINE_UNQUOTED([META_AUTHOR], ["$META_AUTHOR"],
62 [Define the project author.]
64 AC_SUBST([META_AUTHOR])
67 m4_pattern_allow([^LT_(CURRENT|REVISION|AGE)$])
68 META_LT_CURRENT=_ZFS_AC_META_GETVAL([LT_CURRENT]);
69 META_LT_REVISION=_ZFS_AC_META_GETVAL([LT_REVISION]);
70 META_LT_AGE=_ZFS_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],
79 [Define the libtool library 'current'
82 AC_DEFINE_UNQUOTED([META_LT_REVISION],
83 ["$META_LT_REVISION"],
84 [Define the libtool library 'revision'
87 AC_DEFINE_UNQUOTED([META_LT_AGE], ["$META_LT_AGE"],
88 [Define the libtool library 'age'
91 AC_SUBST([META_LT_CURRENT])
92 AC_SUBST([META_LT_REVISION])
93 AC_SUBST([META_LT_AGE])
97 AC_MSG_RESULT([$_zfs_ac_meta_got_file])
101 AC_DEFUN([_ZFS_AC_META_GETVAL],
103 -e "BEGIN { \\$key=shift @ARGV; }"\
104 -e "next unless s/^\s*\\$key@<:@:=@:>@//i;"\
105 -e "s/^((?:@<:@^'\"#@:>@*(?:(@<:@'\"@:>@)@<:@^\2@:>@*\2)*)*)#.*/\\@S|@1/;"\
108 -e "s/^(@<:@'\"@:>@)(.*)\1/\\@S|@2/;"\
110 -e "END { print \\$val if defined \\$val; }"\