]> git.pld-linux.org Git - packages/rpm-build-macros.git/blobdiff - rpm.macros
- 1.535: add %rpm_build_macros
[packages/rpm-build-macros.git] / rpm.macros
index 2870e6acc1ad88e2d4627cb334ac8b6e32abda0a..ed2612d11c554b441631a66245700f23a308dbb7 100644 (file)
@@ -2,6 +2,9 @@
 # PLD Linux rpm macros.
 # <http://www.pld-linux.org/>
 
+# can be used by builder script to to check for version
+%rpm_build_macros      %(R="$Revision$"; RR="${R##: }"; echo ${RR%%?})
+
 %epoch         0
 %x8664         x86_64 amd64 ia32e
 
 %__intltoolize         intltoolize --copy --force
 %__libtoolize          libtoolize --copy --force --install
 
-#      Path to top of build area.
-%_topdir               %{expand:%%global _topdir %(test -d ../SPECS -a -d ../SOURCES && (cd ..; pwd) || echo $HOME/rpm)}%_topdir
+# topdir is where builder script lives, fallback to old style if builder script was not found and
+# SPECS/SOURCES dirs exist (XXX: should be reverse?)
+%_topdir    %{expand:%%global _topdir %(d=;\
+    d=${d:-$([ -d ../SPECS -a -d ../SOURCES ] && (cd .. && pwd))};\
+    d=${d:-$([ -x ../builder ] && (cd ..; pwd))};\
+    d=${d:-$([ -x builder ] && pwd)};\
+    echo ${d:-$HOME/rpm};\
+)}%_topdir
+
+# if %{_topdir}/builder exists, it's new style structure
+%_specdir       %{expand:%%global _specdir %([ -x %{_topdir}/builder ] && echo %{_topdir}/%{name} || echo %{_topdir}/SPECS)}%_specdir
+%_sourcedir            %{expand:%%global _sourcedir %([ -x %{_topdir}/builder ] && echo %{_specdir} || echo %{_topdir}/SOURCES)}%_sourcedir
+
+# BUILD/RPMS/SRPMS are one same level by default as packages dir, if these exist
+# if they don't exist assume we are having custom topdir (which is not named as
+# "packages", i.e ~/rpm/kde/{kdelibs,BUILD/RPMS/SRPMS})
+%_builddir             %{expand:%%global _builddir %([ -d %{_topdir}/../BUILD ] && (cd %{_topdir}/../BUILD; pwd) || echo %{_topdir}/BUILD)}%_builddir
+%_rpmdir               %{expand:%%global _rpmdir %([ -d %{_topdir}/../RPMS ] && (cd %{_topdir}/../RPMS; pwd) || echo %{_topdir}/RPMS)}%_rpmdir
+%_srcrpmdir            %{expand:%%global _srcrpmdir %([ -d %{_topdir}/../SRPMS ] && (cd %{_topdir}/../SRPMS; pwd) || echo %{_topdir}/SRPMS)}%_srcrpmdir
 
 #      The number of cvs changelog entries kept when building package.
 %_buildchangelogtruncate 20
This page took 0.029045 seconds and 4 git commands to generate.