]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.macros
- added bzip2_fallback.patch
[packages/rpm.git] / rpm.macros
index 27b5b8875cff3578349c0f4a5c120b57c3bb1578..1bd798df8899b5f6e4e8e2e1827933e07c6ec25e 100644 (file)
@@ -51,6 +51,46 @@ fi; \
 #      and that both p and q are package names (i.e. no version/release).
 %_dependency_whiteout  %{nil}
 
+
+#-----------------------------------------------------------------
+#
+# (re)definition of %{rpm*flags} with %filterout_* support
+# Requires:            awk
+#
+# Flags specified in %filterout_* are removed from %rpm*flags, exactly:
+# %rpmcflags    = %optflags - %filterout - %filterout_c   - %filterout_ld
+# %rpmcxxflags  = %optflags - %filterout - %filterout_cxx - %filterout_ld
+# %rpmldflags   = %optldflags - %filterout_ld
+#
+# Regular expressions are supported, but to avoid some character be treated
+# as regular expression it must be escaped twice.
+
+%filter_out                                            \
+       for (i in I) {  A=0;                    \
+               for (f in F) {                          \
+                       if (I[i] ~ "^" F[f] "$") A=1;   \
+               };                                                      \
+               if (!A) printf(I[i] FS);        \
+       }
+
+%rpmcflags %(awk 'BEGIN {
+       split("%{?debug:%debugcflags}%{!?debug:%optflags}%{?debuginfocflags}",I);
+       split("%{?filterout} %{?filterout_c} %{?filterout_ld}",F);
+       %{filter_out}
+}')
+
+%rpmcxxflags %(awk 'BEGIN {
+       split("%{?debug:%debugcflags}%{!?debug:%optflags}%{?debuginfocflags}",I);
+       split("%{?filterout} %{?filterout_cxx} %{?filterout_ld}",F);
+       %{filter_out}
+}')
+
+%rpmldflags %(awk 'BEGIN {
+       split("%{?optldflags}",I);
+       split("%{?filterout_ld}",F)
+       %{filter_out}
+}')
+
 #-----------------------------------------------------------------
 %configure2_13 { \
  if [ -n "$LINGUAS" ]; then unset LINGUAS; fi; \
@@ -653,7 +693,7 @@ else \
                %{-M} \\\
                %{-G:-G %{-G*}} \\\
                %{expand:%{%{#}}} 1>&2 || exit $? \
-       [ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i passwd \
+       [ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i passwd || : \
 fi;
 
 # Usage:
@@ -675,7 +715,7 @@ if [ -n "`/usr/bin/getgid %{1}`" ]; then \
 else \
        echo "Adding group %{1} GID=%{-g*}." \
        /usr/sbin/groupadd -g %{-g*} -r %{1} 1>&2 || exit $? \
-       [ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i group \
+       [ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i group || : \
 fi;
 
 # apache_config_{install/uninstall} macros written by glen@pld-linux.org.
@@ -1003,4 +1043,6 @@ for schema in %*; do \
 done \
 %{nil}
 
+%env_update [ ! -x /sbin/env-update ] || /sbin/env-update -u || :
+
 # vim:ts=4 sw=4 noet
This page took 0.032683 seconds and 4 git commands to generate.