]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.macros
- rpm-devel Requires: gzip, tar
[packages/rpm.git] / rpm.macros
index 0ca707b5399ea6b832715be4da113331718651b6..b97eeda130a4e21b0d6d9951b7972c2478744c1f 100644 (file)
@@ -1,5 +1,25 @@
-# arch macro for Intel i?86 compatibile processors
-%ix86  i386 i486 i586 i686 i786 i886 i986
+#-----------------------------------------------------------------
+%configure { \
+ if [ -n "$LINGUAS" ]; then unset LINGUAS; fi; \
+ LDFLAGS="${LDFLAGS:-%{!?debug: -s}}" ; export LDFLAGS ; \
+ CFLAGS="${CFLAGS:-%{!?debug:%optflags}%{?debug: -g -O0}}" ; export CFLAGS ; \
+ CXXFLAGS="${CXXFLAGS:-%{!?debug:%optflags}%{?debug: -g -O0}}" ; export CXXFLAGS ; \
+ FFLAGS="${FFLAGS:-%{!?debug:%optflags}%{?debug: -g -O0}}" ; export FFLAGS ; \
+ ./configure %{_target_platform} \
+       --prefix=%{_prefix} \
+       --exec-prefix=%{_exec_prefix} \
+       --bindir=%{_bindir} \
+       --sbindir=%{_sbindir} \
+       --sysconfdir=%{_sysconfdir} \
+       --datadir=%{_datadir} \
+       --includedir=%{_includedir} \
+       --libdir=%{_libdir} \
+       --libexecdir=%{_libexecdir} \
+       --localstatedir=%{_localstatedir} \
+       --sharedstatedir=%{_sharedstatedir} \
+       --mandir=%{_mandir} \
+       --infodir=%{_infodir} \
+}
 
 #------------------------------------------------------------------------------
 # The GNUconfigure macro does the following:
@@ -12,8 +32,6 @@
 # Based on autogen.sh from GNOME and orginal GNUconfigure
 #
 %GNUconfigure(MCs:)      \
-  CFLAGS="${CFLAGS} %{optflags}" ; export CFLAGS; \
-  LDFLAGS="${LDFLAGS} %{-s:-s}"  ; export LDFLAGS; \
   %{-C:_mydir="`pwd`"; %{-M: %{__mkdir} -p %{-C*};} cd %{-C*}} \
   dirs="`find ${_mydir} -name configure.in -print`"; export dirs; \
     for coin in `echo ${dirs}` \
@@ -54,12 +72,88 @@ else \
     ); \
   fi \
 done \
-  %{-C:${_mydir}}%{!-C:.}/configure %{_target_platform} --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} --bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} --datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} --libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} --sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} --infodir=%{_infodir} %* ; \
+  %{-C:${_mydir}}%{!-C:.}/%{configure} \
   %{-C:cd ${_mydir}; unset _mydir}
 
+# Location of autoconf macros
+%_aclocaldir   %(aclocal --print-ac-dir)
+
+# Location of top applink dir
+%_applnkdir      /usr/X11R6/share/applnk
+
+# Location pixmaps for applnk/desktop files
+%_pixmapsdir   /usr/X11R6/share/pixmaps
+
+# Current date
+%date          %(LC_ALL="C" date +"%a %b %d %Y")
+
+# tmp directory
+%tmpdir                %(echo "${TMPDIR:-/tmp}")
+
+# Example files, programs, scripts...
+%_examplesdir  /usr/src/examples
+
+# Find-requires and directories excluded from auto-req
+%_noautoreqdir         %{_defaultdocdir} %{_examplesdir}
+%_noautoreqdep         %{nil}
+#%__find_requires_pre  /usr/lib/rpm/find-requires-pre %{_noautoreqdir}
+#%__find_requires_core /usr/lib/rpm/find-requires
+#%__find_requires_post /usr/lib/rpm/find-requires-post
+#%__find_requires      %{__find_requires_pre} | %{__find_requires_core} | %{__find_requires_post}
+
+# If non-empty "debug" macro defined, add "dbg" suffix to release number
+%_rpmfilename          %%{NAME}-%%{VERSION}-%%{RELEASE}%{?debug:dbg}.%%{ARCH}.rpm
+
 #-----------------------------------------------------------------
-%configure { CFLAGS="$CFLAGS $RPM_OPT_FLAGS" ; export CFLAGS \
-CXXFLAGS="$CXXFLAGS $RPM_OPT_FLAGS" ; export CXXFLAGS \
-FFLAGS="$FFLAGS $RPM_OPT_FLAGS" ; export FFLAGS \
-./configure %{_target_platform} --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} --bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} --datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} --libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} --sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} --infodir=%{_infodir} }
-  
+# find and gzip all files in %{_mandir} and %{infodir}
+#
+# Requires: xargs, find
+#
+#%no_install_post_compress_docs        1
+%__spec_install_post_compress_docs { \
+echo "Compress man and info pages."; \
+%{!?no_install_post_compress_docs: \
+       %{?verbose:set -x;} \
+       for i in /usr/share/man /usr/X11R6/man /usr/share/info; do \
+               if [ -d "$RPM_BUILD_ROOT$i" ]; then \
+                       find "$RPM_BUILD_ROOT$i" -name \*.bz2 -print | xargs -r %{__bzip2} -df; \
+                       find "$RPM_BUILD_ROOT$i" -name \*.gz -print | xargs -r %{__gzip} -dnf; \
+                       find "$RPM_BUILD_ROOT$i" -type f -print | xargs -r %{__gzip} -9nf; \
+               fi; \
+       done; \
+} }
+
+#-----------------------------------------------------------------
+# Strip executable binaries and shared object files
+#
+# Requires: find, awk, strip, cut, xargs
+#
+#%no_install_post_strip        1
+%__spec_install_post_strip {%{!?debug: \
+%{!?no_install_post_strip: \
+       %{?verbose:set -x;} \
+       echo "Strip executable binaries and shared object files."; \
+       filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*"`; \
+       elfexelist=`echo $filelist | xargs -r file | \
+               awk '/ELF.*executable/ {print $1}' | cut -d: -f1`; \
+       elfsharedlist=`echo $filelist | xargs -r file | \
+               awk '/LF.*shared object/ {print $1}' | cut -d: -f1`; \
+       if [ -n "$elfexelist" ]; then \
+               strip --remove-section=.note  --remove-section=.comment $elfexelist; \
+       fi; \
+       if [ -n "$elfsharedlist" ]; then \
+               strip --strip-unneeded --remove-section=.note  --remove-section=.comment $elfsharedlist; \
+       fi; } \
+} }
+
+#-----------------------------------------------------------------
+# post %install sequence:
+# - compress all man and info pages,
+# - strip all ELF executables and ELF shared objects if not %debug.
+#
+%__spec_install_post { \
+%{__spec_install_post_strip} \
+%{__spec_install_post_compress_docs} }
+
+%_source_payload        w9.gzdio
+%_binary_payload        w9.bzdio
This page took 0.104507 seconds and 4 git commands to generate.