# rpm query has a strange bug:
# when format is enough long/complicate/whatsoever/
# first constant string is disappears.
# i.e, string '#dummy' will not be printed.
# Without this format  (with '#dummy' string)
# '#BUILDHOST:   ' is disappears.
# If one day this bug will be fixed, it'll be just harmless
# comment '#dummy' in the specfile
# CHANGE:
# in the at least rpm-4.3.1 and 4.3.2 it doesn't help:
# i have to add TWO strings with 'dummy'.
# No idea is it due to rpm change or because Eric add more tags.
#
# be careful : this file should follow a strict format,
# because rpm tags used here will be check against available rpm tags
# 1) rpm alias definition, ex : rpm alias --spec_preamble --qf
# 2) query, ex : %|SUMMARY?{\
# 3) output, ex : [Summary:       %{SUMMARY}\n]\

rpm alias --spec_preamble --qf '\
%|BUILDHOST?{#dummy}|\
%|BUILDHOST?{#dummy}|\
\
%|BUILDHOST?{\
[#BUILDHOST:    %{BUILDHOST}\n]\
}|\
%|BUILDTIME?{\
[#BUILDTIME:    %{BUILDTIME:date}\n]\
}|\
%|SOURCERPM?{\
[#SOURCERPM:    %{SOURCERPM}\n]\
}|\
%|PATCH?{\
[#PATCH:    %{PATCH}\n]\
}|\
%|RPMVERSION?{\
[#RPMVERSION:   %{RPMVERSION}\n]\
}|\
%|COOKIE?{\
[#COOKIE:       %{COOKIE}\n]\
}|\
%|INSTALLTIME?{\
[#INSTALLTIME:  %{INSTALLTIME:date}\n]\
}|\
%|INSTPREFIXES?{\
[#INSTPREFIXES: %{INSTPREFIXES}\n]\
}|\
%|OS?{\
[#OS:           %{OS}\n]\
}|\
%|SIZE?{\
[#SIZE:           %{SIZE}\n]\
}|\
%|ARCHIVESIZE?{\
[#ARCHIVESIZE:           %{ARCHIVESIZE}\n]\
}|\
%|ARCH?{\
[#ARCH:         %{ARCH}\n]\
}|\
%|ARCH?{\
[BuildArch:     %{ARCH}\n]\
}|\
%|NAME?{\
[Name:          %{NAME}\n]\
}|\
%|VERSION?{\
[Version:       %{VERSION}\n]\
}|\
%|RELEASE?{\
[Release:       %{RELEASE}\n]\
}|\
%|LICENSE?{\
[License:       %{LICENSE}\n]\
}|\
%|GROUP?{\
[Group:         %{GROUP}\n]\
}|\
%|SUMMARY?{\
[Summary:       %{SUMMARY}\n]\
}|\
%|DISTRIBUTION?{\
[Distribution:  %{DISTRIBUTION}\n]\
}|\
%|URL?{\
[URL:           %{URL}\n]\
}|\
%|VENDOR?{\
[Vendor:        %{VENDOR}\n]\
}|\
%|PACKAGER?{\
[Packager:      %{PACKAGER}\n]\
}|\
%|EPOCH?{\
[Epoch:         %{EPOCH}\n]\
}|\
%|EXCLUDEARCH?{\
[ExcludeArch:   %{EXCLUDEARCH}\n]\
}|\
%|EXCLUSIVEARCH?{\
[ExclusiveArch: %{EXCLUSIVEARCH}\n]\
}|\
%|EXCLUDEOS?{\
[ExcludeOs:     %{EXCLUDEOS}\n]\
}|\
%|EXCLUSIVEOS?{\
[ExclusiveOs:   %{EXCLUSIVEOS}\n]\
}|\
%|PREFIXES?{\
[Prefix:        %{PREFIXES}\n]\
}|\
'

rpm alias --spec_conflicts --qf \
'\
%|CONFLICTNAME?{\
[Conflicts:     %{CONFLICTNAME} %{CONFLICTFLAGS:depflags} %{CONFLICTVERSION}\n]\
}|\
'

rpm alias --spec_obsoletes --qf \
'\
%|OBSOLETES?{\
[Obsoletes:     %{OBSOLETES}\n]\
}|\
'

rpm alias --spec_provides --qf \
'\
%|PROVIDES?{\
[Provides:      %{PROVIDES} %{PROVIDEFLAGS:depflags} %{PROVIDEVERSION}\n]\
}|\
'

rpm alias --spec_requires --qf \
"\
%|REQUIRENAME?{\
[Requires:      %{REQUIRENAME} %{REQUIREFLAGS:depflags} %{REQUIREVERSION}\n]\
}|\
"

rpm alias --spec_description --qf \
'\
[%{DESCRIPTION}\n]\
'

rpm alias --spec_files --qf \
'\
[\
%.1{FILEMODES:perms}\n\
%{FILEFLAGS:fflags}\n\
%6.6{FILEMODES:octal}\n\
%{FILEUSERNAME}\n\
%{FILEGROUPNAME}\n\
%{FILEVERIFYFLAGS:octal}\n\
%{FILELANGS}\n\
%{FILENAMES}\n\
]\
'

rpm alias --spec_triggers --qf \
'\
[%%trigger%{TRIGGERTYPE} -p %{TRIGGERSCRIPTPROG} -- %{TRIGGERCONDS}\n%|TRIGGERSCRIPTS?{%{TRIGGERSCRIPTS}\n}|]\
\
'

rpm alias --spec_pre --qf \
'\
%|PREINPROG\
?{%%pre -p %{PREINPROG}\n%|PREIN?{[%{PREIN}\n]}|}\
:{%|PREIN?{\n%%pre\n[%{PREIN}\n]}|}|\
'
rpm alias --spec_post --qf \
'\
%|POSTINPROG\
?{%%post -p %{POSTINPROG}\n%|POSTIN?{[%{POSTIN}\n]}|}\
:{%|POSTIN?{\n%%post\n[%{POSTIN}\n]}|}|\
'

rpm alias --spec_preun --qf \
'\
%|PREUNPROG\
?{%%preun -p %{PREUNPROG}\n%|PREUN?{[%{PREUN}\n]}|}\
:{%|PREUN?{\n%%preun\n[%{PREUN}\n]}|}|\
'

rpm alias --spec_postun --qf \
'\
%|POSTUNPROG\
?{%%postun -p %{POSTUNPROG}\n%|POSTUN?{[%{POSTUN}\n]}|}\
:{%|POSTUN?{\n%%postun\n[%{POSTUN}\n]}|}|\
'

rpm alias --spec_verifyscript --qf \
'\
%|VERIFYSCRIPTPROG\
?{%%verifyscript -p %{VERIFYSCRIPTPROG}\n%|VERIFYSCRIPT?{[%{VERIFYSCRIPT}\n]}|}\
:{%|VERIFYSCRIPT?{\n%%verifyscript\n[%{VERIFYSCRIPT}\n]}|}|\
'

rpm alias --spec_changelog --qf \
'\
%|CHANGELOGTIME\
?{[* %{CHANGELOGTIME:day} %{CHANGELOGNAME}\n\n%{CHANGELOGTEXT}\n\n]}|\
'

