RPMMacrosDescription: различия между версиями
Andyc (обсуждение | вклад) м (переименовал «Rpmmacros» в «RPMMacrosDescription»: более точное отражение назначения страницы) |
(Обновлён список rpm-[bm].* пакетов за 8 лет) |
||
(не показано 9 промежуточных версий 4 участников) | |||
Строка 3: | Строка 3: | ||
=== Cписок макросов === | === Cписок макросов === | ||
На данный момент ( | На данный момент (16.11.2017) список пакетов таков: | ||
< | <pre> | ||
% apt-cache search rpm | grep '^rpm-[bm]' | sort -n | |||
rpm-build-apache2 - | rpm-build-apache2 - RPM helper to rebuild Web servers and apps packages | ||
rpm-build-apache - | rpm-build-apache - RPM helper to rebuild Web servers and apps packages | ||
rpm-build-browser-plugins - Netscape Gecko Plug-in API common packaging files | rpm-build-browser-plugins - Netscape Gecko Plug-in API common packaging files | ||
rpm-build-buzztard - RPM macros for buzztard build | rpm-build-buzztard - RPM macros for buzztard build | ||
rpm-build-compat - ALT Linux compatibility | rpm-build-compat - ALT Linux compatibility macros for backport purposes | ||
rpm-build-docs-experimental - RPM helper macros to rebuild documentation packages | |||
rpm-build-docs-experimental - | rpm-build-docs - RPM helper macros to rebuild documentation packages | ||
rpm-build-docs - | rpm-build-erlang - RPM helper scripts to calculate Erlang dependencies | ||
rpm-build-erlang - RPM helper scripts to calculate Erlang dependencies | rpm-build-firefox - RPM helper macros to rebuild firefox packages | ||
rpm-build-firefox - RPM helper macros to rebuild firefox packages | rpm-build-fonts - RPM helper scripts for building font packages | ||
rpm-build-fonts - RPM helper scripts for | rpm-build-fpc - RPM helpers for Free Pascal packages | ||
rpm-build-fpc - RPM helpers for Free Pascal packages | rpm-build-gir - RPM helper macros and dependency utils to build GObject Introspection packages | ||
rpm-build-gmpc - RPM macros for building GMPC plugins | rpm-build-gmpc - RPM macros for building GMPC plugins | ||
rpm-build-gnome - RPM macros and helper scripts for GNOME packages building | rpm-build-gnat - Files shared by Ada libraries | ||
rpm-build-gnome - RPM macros and helper scripts for GNOME packages building | |||
rpm-build-golang - RPM helper macros to rebuild GO packages | |||
rpm-build-guestfs - RPM helper post script for build guestfs appliance | |||
rpm-build-haskell - RPM helpers to rebuild Haskell packages | rpm-build-haskell - RPM helpers to rebuild Haskell packages | ||
rpm-build-java - RPM | rpm-build-intro - New macros for ALT Linux rpm build | ||
rpm-build-java-osgi - RPM build helpers for Java packages with OSGi dependencies | |||
rpm-build-java - RPM build helpers for Java packages | |||
rpm-build-kernel - RPM macros to build kernel packages | rpm-build-kernel - RPM macros to build kernel packages | ||
rpm-build-kf5 - Set of RPM macros for packaging KF5-based applications | |||
rpm-build-licenses - RPM macros for well-known licenses | rpm-build-licenses - RPM macros for well-known licenses | ||
rpm-build-linux-ha - RPM macros for Linux-HA project apps | rpm-build-linux-ha - RPM macros for Linux-HA project apps | ||
rpm-build-lmms - Helper package for creation of build dependences lmms | rpm-build-lmms - Helper package for creation of build dependences lmms | ||
rpm-build-mediawiki - RPM helper scripts for packaging mediawiki extensions | |||
rpm-build-mingw32 - MinGW RPM helper macros | rpm-build-mingw32 - MinGW RPM helper macros | ||
rpm-build-mingw64 - MinGW RPM build helper files and macros | |||
rpm-build-mono - RPM helper macros and dependency utils to build Mono packages | rpm-build-mono - RPM helper macros and dependency utils to build Mono packages | ||
rpm-build-mozilla.org - RPM helpers to build Mozilla.org packages | rpm-build-mozilla.org - RPM helpers to build Mozilla.org packages | ||
rpm-build-nasty - Adjust the RPM build process nice level to zero | |||
rpm-build-NetSDS - RPM helper macros to rebuild NetSDS packages | rpm-build-NetSDS - RPM helper macros to rebuild NetSDS packages | ||
rpm-build-nodejs - RPM helper scripts for building nodejs packages | |||
rpm-build-ocaml - RPM helpers to rebuild OCaml packages | rpm-build-ocaml - RPM helpers to rebuild OCaml packages | ||
rpm-build-palemoon - RPM helper macros to rebuild palemoon packages | |||
rpm-build-pear - RPM helper scripts for build PEAR packages | rpm-build-pear - RPM helper scripts for build PEAR packages | ||
rpm-build-pecl - RPM helper scripts for build PECL packages | rpm-build-pecl - RPM helper scripts for build PECL packages | ||
rpm-build-perl6 - RPM macroses for Rakudo Perl 6 | |||
rpm-build-perl - RPM helper scripts to calculate Perl dependencies | rpm-build-perl - RPM helper scripts to calculate Perl dependencies | ||
rpm-build-php5 - RPM helper macros to rebuild PHP5 packages | rpm-build-php5 - RPM helper macros to rebuild PHP5 packages | ||
rpm-build-php7 - RPM helper macros to rebuild PHP packages | |||
rpm-build-php7-version - RPM helper macros to rebuild PHP7 packages | |||
rpm-build-php-version - RPM helper macros to rebuild PHP5 packages | |||
rpm-build-python3 - RPM helper macros to rebuild python3 packages | |||
rpm-build-python - RPM helper macros to rebuild python packages | rpm-build-python - RPM helper macros to rebuild python packages | ||
rpm-build- | rpm-build-qml - RPM helper macros to rebuild QML packages | ||
rpm-build-rpm-eval - | rpm-build-rpm-eval - The script disclosure macros in files | ||
rpm-build-ruby - RPM helper scripts to calculate Ruby dependencies | rpm-build-ruby - RPM helper scripts to calculate Ruby dependencies | ||
rpm-build-sawfish - RPM macros for sawfish-related packages | rpm-build-sawfish - RPM macros for sawfish-related packages | ||
rpm-build - Scripts and executable programs used to build packages | |||
rpm-build-seamonkey - RPM helper macros to rebuild seamonkey packages | rpm-build-seamonkey - RPM helper macros to rebuild seamonkey packages | ||
rpm-build- | rpm-build-suse-compat - Compatibility environment to build SuSE rpms | ||
rpm-build-tcl - RPM helpers to use with Tcl scripts | rpm-build-tcl - RPM helpers to use with Tcl scripts | ||
rpm-build-texmf - RPM helper macros to rebuild TeX packages | rpm-build-texmf - RPM helper macros to rebuild TeX packages | ||
rpm-build-thunderbird - RPM helper macros to rebuild thunderbird packages | rpm-build-thunderbird - RPM helper macros to rebuild thunderbird packages | ||
rpm-build-vhosts-filesystem - RPM | rpm-build-ubt - Universal Branch Tag macros | ||
rpm-build-vala - RPM helper macros and dependency utils to build Vala packages | |||
rpm-build-vhosts-filesystem - RPM macroses for build packages, serving shared content | |||
rpm-build-vim - RPM macros needed to build additional VIM plugin packages | rpm-build-vim - RPM macros needed to build additional VIM plugin packages | ||
rpm-build-webserver-common - | rpm-build-webserver-common - RPM helper to rebuild Web servers and apps packages | ||
rpm-build-wlskins - RPM helper macros to build winamplike-skins collections | rpm-build-wlskins - RPM helper macros to build winamplike-skins collections | ||
rpm-build-xdg - RPM macros for XDG Base Directory Specification and more | rpm-build-xdg - RPM macros for XDG Base Directory Specification and more | ||
rpm-build-xfce4 - | rpm-build-xen - Arch-specific requirement to build XEN | ||
rpm-build-xfce4 - Macros for comfort build xfce4 and plugins | |||
rpm-build-xscreensaver - A screen saver and locker for the X window system - RPM macros | rpm-build-xscreensaver - A screen saver and locker for the X window system - RPM macros | ||
rpm-macros-alterator - Set of RPM macros for packaging alterator-based applications | rpm-macros-alterator - Set of RPM macros for packaging alterator-based applications | ||
rpm-macros-alternatives - Set of RPM macros for packaging alternatives-based applications | rpm-macros-alternatives - Set of RPM macros for packaging alternatives-based applications | ||
rpm-macros-apache2-compat - RPM | rpm-macros-apache2-compat - RPM macros to Apache2 Web server | ||
rpm-macros-apache2 - RPM | rpm-macros-apache2 - RPM macros to Apache2 Web server | ||
rpm-macros-apache - RPM | rpm-macros-apache - RPM macros to Apache Web server | ||
rpm-macros-branch - RPM | rpm-macros-branch - RPM macros for support branches | ||
rpm-macros-branding - RPM helper macros to build branding packages | |||
rpm-macros-cmake - Set of RPM macros for packaging applications that use cmake | rpm-macros-cmake - Set of RPM macros for packaging applications that use cmake | ||
rpm-macros-daemontools - Set of RPM macros for packaging daemontools-based applications | rpm-macros-color - Set of RPM macros for packaging color-filesystem-based applications | ||
rpm-macros-condstopstart - Rpm macros for condstopstart | |||
rpm-macros-daemontools - Set of RPM macros for packaging daemontools-encore-based applications | |||
rpm-macros-dotnet - RPM macros for build dotnet packages | |||
rpm-macros-emacs - Set of RPM macros for packaging emacs-devel-based applications | rpm-macros-emacs - Set of RPM macros for packaging emacs-devel-based applications | ||
rpm-macros-erlang - RPM helper macros to rebuild erlang packages | rpm-macros-erlang - RPM helper macros to rebuild erlang packages | ||
rpm-macros-fedora-compat - Fedora compatibility set of macro | |||
rpm-macros-fillup - Set of RPM macros for packaging fillup-based applications | rpm-macros-fillup - Set of RPM macros for packaging fillup-based applications | ||
rpm-macros-fontpackages - Fedora compatible set of font macros | |||
rpm-macros-fonts - RPM helper macros for building font packages | |||
rpm-macros-ghc7.6.1-common - Set of RPM macros for packaging ghc7.6.1-based applications | |||
rpm-macros-girar-parallel-build - RPM macros for automatic parallel build on girar server | |||
rpm-macros-gnat - Set of RPM macros for packaging GNAT applications | |||
rpm-macros-info-install - Set of RPM macros for packaging texinfo files | rpm-macros-info-install - Set of RPM macros for packaging texinfo files | ||
rpm-macros-intro-conflicts - Conflicts macros for ALT Linux rpm build | |||
rpm-macros-jabber - Set of RPM macros for packaging Jabber servers and components | rpm-macros-jabber - Set of RPM macros for packaging Jabber servers and components | ||
rpm-macros-java - RPM helper macros to build Java packages | |||
rpm-macros-javascript - RPM helper scripts for packaging javascipt libraries | |||
rpm-macros-kde-common-devel - Set of RPM macros for packaging kde-common-devel-based applications | |||
rpm-macros-ladspa_sdk - Set of RPM macros for packaging ladspa_sdk-based applications | |||
rpm-macros-lua - RPM helper macros to build Lua packages | |||
rpm-macros-mageia-compat - Mageia compatibility set of macro | |||
rpm-macros-make - Make helper macros to rebuild packages | |||
rpm-macros-mingw32 - MinGW RPM helper macros | rpm-macros-mingw32 - MinGW RPM helper macros | ||
rpm-macros-moodle-lang-cronbuild-common - Set of RPM macros for packaging moodle-lang-cronbuild-common-based applications | |||
rpm-macros-moodle - RPM helper macros and dependency utils to build Mooodle packages | |||
rpm-macros-mpi-selector - Set of RPM macros for packaging mpi-selector-based applications | rpm-macros-mpi-selector - Set of RPM macros for packaging mpi-selector-based applications | ||
rpm-macros-ninja-build - Helper macros for building RPM packages with ninja-build | |||
rpm-macros-nodejs - RPM helper macros for building nodejs packages | |||
rpm-macros-pam0 - Set of RPM macros for packaging PAM modules | |||
rpm-macros-qt3 - Set of RPM macros for packaging qt3-based applications | |||
rpm-macros-qt4 - Set of RPM macros for packaging qt4-based applications | rpm-macros-qt4 - Set of RPM macros for packaging qt4-based applications | ||
rpm-macros-rpm-eval - RPM | rpm-macros-qt5 - Set of RPM macros for packaging Qt5-based applications | ||
rpm-macros-vhosts-filesystem - RPM | rpm-macros-reponame - rpm macro for repository detect | ||
rpm-macros-webserver-cgi-bin-control - RPM | rpm-macros-rpm-eval - RPM macros for use rpm-eval.sh | ||
rpm-macros-webserver-common - RPM | rpm-macros-ruby - rpm macros for Ruby packages | ||
rpm-macros-sphinx3 - RPM macros for build with Sphinx (Python 3) | |||
rpm-macros-sphinx - RPM macros for build with Sphinx | |||
rpm-macros-suse-compat - SuSE compatibility macros | |||
rpm-macros-trinity - RPM helper macros to rebuild TDE packages | |||
rpm-macros-tts - RPM macros for speech synthesis engines | |||
rpm-macros-ubt - Base set of RPM macros for packaging Universal Branch Tag | |||
rpm-macros-uefi - A set of RPM macros to help package UEFI related things | |||
rpm-macros-vhosts-filesystem - RPM macroses for packages, serving shared content | |||
rpm-macros-web-assets - RPM macros for Web Assets packaging | |||
rpm-macros-webobjects - RPM macros to WebObjects libraries | |||
rpm-macros-webserver-cgi-bin-control - RPM macros to rebuild Web servers and apps packages | |||
rpm-macros-webserver-common - RPM macros to rebuild Web servers and apps packages | |||
rpm-macros-xmms - Set of RPM macros for packaging xmms-based applications | rpm-macros-xmms - Set of RPM macros for packaging xmms-based applications | ||
</pre> | |||
</ | |||
=== Использование макросов === | === Использование макросов === | ||
Строка 83: | Строка 136: | ||
Для использования данных макросов, необходимо добавить в spec строчку: | Для использования данных макросов, необходимо добавить в spec строчку: | ||
<pre>BuildRequires(pre): | <pre>BuildRequires(pre): имя-пакета-с-макросами</pre> | ||
Например<ref>[http://lists.altlinux.org/pipermail/sisyphus/2009-September/341823.html | Например<ref>[http://lists.altlinux.org/pipermail/sisyphus/2009-September/341823.html wrar@ об определении макроса]</ref><ref>[http://lists.altlinux.org/pipermail/devel/2009-November/177411.html wrar@ вносит изменения в макрос %cmake]</ref>: | ||
<pre> | <pre> | ||
BuildRequires(pre): rpm-build- | BuildRequires(pre): rpm-build-java | ||
</pre> | </pre> | ||
Cписки макросов | Cписки макросов находятся в следующих директориях: | ||
{{path|/etc/rpm/macros.d/}} согласно [http://www.altlinux.org/RPMMacrosPackagingPolicy | {{path|/etc/rpm/macros.d/}} согласно [http://www.altlinux.org/RPMMacrosPackagingPolicy RPM Macros Packaging Policy], должна устареть | ||
{{path|/usr/lib/rpm/macros.d/}} | {{path|/usr/lib/rpm/macros.d/}} | ||
Поглядеть, во что раскрывается конкретный макрос, можно так: | Поглядеть, во что раскрывается конкретный макрос, можно так: | ||
<pre>rpm --eval % | <pre>rpm --eval %имя_макроса</pre> | ||
или | |||
<pre>rpm -E %имя_макроса</pre> | |||
Например, нам надо узнать, во что раскрывается макрос %java_dir: | Например, нам надо узнать, во что раскрывается макрос %java_dir: | ||
<pre> | <pre> | ||
Строка 105: | Строка 160: | ||
</pre> | </pre> | ||
{|class="standard" | |||
!Макрос | |||
!Замена | |||
!Описание | |||
|- | |||
!colspan="3"| Макросы rpm-build-compat | |||
|- | |||
|%make_install_std %makeinstall_std | |||
|make INSTALL="/bin/install -p" install DESTDIR=/root/tmp/%{name}-buildroot | |||
|Стандартная директория для инсталляции после сборки пакета. | |||
|- | |||
|%kde_docdir %_kdedocdir | |||
|%_docdir/HTML | |||
|Директория для установки документации KDE. (/usr/share/doc/HTML/) | |||
|- | |||
|%gtk_docdir %_gtkdocdir | |||
|/usr/share/gtk-doc/html | |||
|Директория для установки документации Gtk. | |||
|- | |||
|%java_dir %_javadir | |||
|/usr/share/java | |||
|Директория для некоторых jar файлов. | |||
|- | |||
|%java_docdir %_javadocdir | |||
|/usr/share/javadoc | |||
| | |||
|- | |||
|%_rpmmacrosdir | |||
|/usr/lib/rpm/macros.d | |||
|Директория для установки сторонних макросов | |||
|- | |||
|%rpmcflags | |||
|%optflags | |||
|Как правило -pipe -Wall -O2 -march=вашпроцессор | |||
|- | |||
|%rpmcxxflags | |||
|%optflags | |||
|Как правило -pipe -Wall -O2 -march=вашпроцессор | |||
|- | |||
|%_aclocaldir | |||
|/usr/share/aclocal | |||
|Директория для m4 файлов. | |||
|- | |||
|%fix_permissions | |||
|find ./ -type d -print0 | xargs -0 chmod 0775 find ./ -type f -print0 | xargs -0 chmod 0664 | |||
|Исправление доступа для директорий и файлов, начиная с текущего каталога | |||
|- | |||
|%remove_repo_info | |||
|find ./ -type d -name .svn -print0 | xargs -0 --no-run-if-empty rm -rf {} ; find ./ -type d -name CVS -print0 | xargs -0 --no-run-if-empty rm -rf {} ; | |||
|Удаление служебной информации о репозиториях cvs и svn | |||
|- | |||
|%_locksubsysdir | |||
|/var/lock/subsys | |||
| | |||
|- | |||
|%start_service() | |||
|<code>[ -z "$DURING_INSTALL" ] && [ "$1" = "1" ] && /etc/rc.d/init.d/%{1} start</code> | |||
|Запуск установленного пакета как сервиса | |||
|- | |||
|%_sysconfigdir | |||
|%_sysconfdir/sysconfig | |||
|Расположение конфигурационных файлов для сервисов | |||
|- | |||
|%groupadd | |||
|/usr/sbin/groupadd -r -f | |||
|Добавление cистемной группы (группы в которых gid < 499), даже если она существовала до этого | |||
|- | |||
|%useradd | |||
|/usr/sbin/useradd -r | |||
|Добавление системного пользователя | |||
|- | |||
|} | |||
== Ссылки == | == Ссылки == |
Текущая версия от 17:28, 16 ноября 2017
Макросы RPM
Данная страница содержит описания макросов, специфичных для ALT Linux.
Cписок макросов
На данный момент (16.11.2017) список пакетов таков:
% apt-cache search rpm | grep '^rpm-[bm]' | sort -n rpm-build-apache2 - RPM helper to rebuild Web servers and apps packages rpm-build-apache - RPM helper to rebuild Web servers and apps packages rpm-build-browser-plugins - Netscape Gecko Plug-in API common packaging files rpm-build-buzztard - RPM macros for buzztard build rpm-build-compat - ALT Linux compatibility macros for backport purposes rpm-build-docs-experimental - RPM helper macros to rebuild documentation packages rpm-build-docs - RPM helper macros to rebuild documentation packages rpm-build-erlang - RPM helper scripts to calculate Erlang dependencies rpm-build-firefox - RPM helper macros to rebuild firefox packages rpm-build-fonts - RPM helper scripts for building font packages rpm-build-fpc - RPM helpers for Free Pascal packages rpm-build-gir - RPM helper macros and dependency utils to build GObject Introspection packages rpm-build-gmpc - RPM macros for building GMPC plugins rpm-build-gnat - Files shared by Ada libraries rpm-build-gnome - RPM macros and helper scripts for GNOME packages building rpm-build-golang - RPM helper macros to rebuild GO packages rpm-build-guestfs - RPM helper post script for build guestfs appliance rpm-build-haskell - RPM helpers to rebuild Haskell packages rpm-build-intro - New macros for ALT Linux rpm build rpm-build-java-osgi - RPM build helpers for Java packages with OSGi dependencies rpm-build-java - RPM build helpers for Java packages rpm-build-kernel - RPM macros to build kernel packages rpm-build-kf5 - Set of RPM macros for packaging KF5-based applications rpm-build-licenses - RPM macros for well-known licenses rpm-build-linux-ha - RPM macros for Linux-HA project apps rpm-build-lmms - Helper package for creation of build dependences lmms rpm-build-mediawiki - RPM helper scripts for packaging mediawiki extensions rpm-build-mingw32 - MinGW RPM helper macros rpm-build-mingw64 - MinGW RPM build helper files and macros rpm-build-mono - RPM helper macros and dependency utils to build Mono packages rpm-build-mozilla.org - RPM helpers to build Mozilla.org packages rpm-build-nasty - Adjust the RPM build process nice level to zero rpm-build-NetSDS - RPM helper macros to rebuild NetSDS packages rpm-build-nodejs - RPM helper scripts for building nodejs packages rpm-build-ocaml - RPM helpers to rebuild OCaml packages rpm-build-palemoon - RPM helper macros to rebuild palemoon packages rpm-build-pear - RPM helper scripts for build PEAR packages rpm-build-pecl - RPM helper scripts for build PECL packages rpm-build-perl6 - RPM macroses for Rakudo Perl 6 rpm-build-perl - RPM helper scripts to calculate Perl dependencies rpm-build-php5 - RPM helper macros to rebuild PHP5 packages rpm-build-php7 - RPM helper macros to rebuild PHP packages rpm-build-php7-version - RPM helper macros to rebuild PHP7 packages rpm-build-php-version - RPM helper macros to rebuild PHP5 packages rpm-build-python3 - RPM helper macros to rebuild python3 packages rpm-build-python - RPM helper macros to rebuild python packages rpm-build-qml - RPM helper macros to rebuild QML packages rpm-build-rpm-eval - The script disclosure macros in files rpm-build-ruby - RPM helper scripts to calculate Ruby dependencies rpm-build-sawfish - RPM macros for sawfish-related packages rpm-build - Scripts and executable programs used to build packages rpm-build-seamonkey - RPM helper macros to rebuild seamonkey packages rpm-build-suse-compat - Compatibility environment to build SuSE rpms rpm-build-tcl - RPM helpers to use with Tcl scripts rpm-build-texmf - RPM helper macros to rebuild TeX packages rpm-build-thunderbird - RPM helper macros to rebuild thunderbird packages rpm-build-ubt - Universal Branch Tag macros rpm-build-vala - RPM helper macros and dependency utils to build Vala packages rpm-build-vhosts-filesystem - RPM macroses for build packages, serving shared content rpm-build-vim - RPM macros needed to build additional VIM plugin packages rpm-build-webserver-common - RPM helper to rebuild Web servers and apps packages rpm-build-wlskins - RPM helper macros to build winamplike-skins collections rpm-build-xdg - RPM macros for XDG Base Directory Specification and more rpm-build-xen - Arch-specific requirement to build XEN rpm-build-xfce4 - Macros for comfort build xfce4 and plugins rpm-build-xscreensaver - A screen saver and locker for the X window system - RPM macros rpm-macros-alterator - Set of RPM macros for packaging alterator-based applications rpm-macros-alternatives - Set of RPM macros for packaging alternatives-based applications rpm-macros-apache2-compat - RPM macros to Apache2 Web server rpm-macros-apache2 - RPM macros to Apache2 Web server rpm-macros-apache - RPM macros to Apache Web server rpm-macros-branch - RPM macros for support branches rpm-macros-branding - RPM helper macros to build branding packages rpm-macros-cmake - Set of RPM macros for packaging applications that use cmake rpm-macros-color - Set of RPM macros for packaging color-filesystem-based applications rpm-macros-condstopstart - Rpm macros for condstopstart rpm-macros-daemontools - Set of RPM macros for packaging daemontools-encore-based applications rpm-macros-dotnet - RPM macros for build dotnet packages rpm-macros-emacs - Set of RPM macros for packaging emacs-devel-based applications rpm-macros-erlang - RPM helper macros to rebuild erlang packages rpm-macros-fedora-compat - Fedora compatibility set of macro rpm-macros-fillup - Set of RPM macros for packaging fillup-based applications rpm-macros-fontpackages - Fedora compatible set of font macros rpm-macros-fonts - RPM helper macros for building font packages rpm-macros-ghc7.6.1-common - Set of RPM macros for packaging ghc7.6.1-based applications rpm-macros-girar-parallel-build - RPM macros for automatic parallel build on girar server rpm-macros-gnat - Set of RPM macros for packaging GNAT applications rpm-macros-info-install - Set of RPM macros for packaging texinfo files rpm-macros-intro-conflicts - Conflicts macros for ALT Linux rpm build rpm-macros-jabber - Set of RPM macros for packaging Jabber servers and components rpm-macros-java - RPM helper macros to build Java packages rpm-macros-javascript - RPM helper scripts for packaging javascipt libraries rpm-macros-kde-common-devel - Set of RPM macros for packaging kde-common-devel-based applications rpm-macros-ladspa_sdk - Set of RPM macros for packaging ladspa_sdk-based applications rpm-macros-lua - RPM helper macros to build Lua packages rpm-macros-mageia-compat - Mageia compatibility set of macro rpm-macros-make - Make helper macros to rebuild packages rpm-macros-mingw32 - MinGW RPM helper macros rpm-macros-moodle-lang-cronbuild-common - Set of RPM macros for packaging moodle-lang-cronbuild-common-based applications rpm-macros-moodle - RPM helper macros and dependency utils to build Mooodle packages rpm-macros-mpi-selector - Set of RPM macros for packaging mpi-selector-based applications rpm-macros-ninja-build - Helper macros for building RPM packages with ninja-build rpm-macros-nodejs - RPM helper macros for building nodejs packages rpm-macros-pam0 - Set of RPM macros for packaging PAM modules rpm-macros-qt3 - Set of RPM macros for packaging qt3-based applications rpm-macros-qt4 - Set of RPM macros for packaging qt4-based applications rpm-macros-qt5 - Set of RPM macros for packaging Qt5-based applications rpm-macros-reponame - rpm macro for repository detect rpm-macros-rpm-eval - RPM macros for use rpm-eval.sh rpm-macros-ruby - rpm macros for Ruby packages rpm-macros-sphinx3 - RPM macros for build with Sphinx (Python 3) rpm-macros-sphinx - RPM macros for build with Sphinx rpm-macros-suse-compat - SuSE compatibility macros rpm-macros-trinity - RPM helper macros to rebuild TDE packages rpm-macros-tts - RPM macros for speech synthesis engines rpm-macros-ubt - Base set of RPM macros for packaging Universal Branch Tag rpm-macros-uefi - A set of RPM macros to help package UEFI related things rpm-macros-vhosts-filesystem - RPM macroses for packages, serving shared content rpm-macros-web-assets - RPM macros for Web Assets packaging rpm-macros-webobjects - RPM macros to WebObjects libraries rpm-macros-webserver-cgi-bin-control - RPM macros to rebuild Web servers and apps packages rpm-macros-webserver-common - RPM macros to rebuild Web servers and apps packages rpm-macros-xmms - Set of RPM macros for packaging xmms-based applications
Использование макросов
Для использования данных макросов, необходимо добавить в spec строчку:
BuildRequires(pre): имя-пакета-с-макросами
BuildRequires(pre): rpm-build-java
Cписки макросов находятся в следующих директориях:
/etc/rpm/macros.d/ согласно RPM Macros Packaging Policy, должна устареть
/usr/lib/rpm/macros.d/
Поглядеть, во что раскрывается конкретный макрос, можно так:
rpm --eval %имя_макроса
или
rpm -E %имя_макроса
Например, нам надо узнать, во что раскрывается макрос %java_dir:
$ rpm --eval %java_dir /usr/share/java $
Макрос | Замена | Описание |
---|---|---|
Макросы rpm-build-compat | ||
%make_install_std %makeinstall_std | make INSTALL="/bin/install -p" install DESTDIR=/root/tmp/%{name}-buildroot | Стандартная директория для инсталляции после сборки пакета. |
%kde_docdir %_kdedocdir | %_docdir/HTML | Директория для установки документации KDE. (/usr/share/doc/HTML/) |
%gtk_docdir %_gtkdocdir | /usr/share/gtk-doc/html | Директория для установки документации Gtk. |
%java_dir %_javadir | /usr/share/java | Директория для некоторых jar файлов. |
%java_docdir %_javadocdir | /usr/share/javadoc | |
%_rpmmacrosdir | /usr/lib/rpm/macros.d | Директория для установки сторонних макросов |
%rpmcflags | %optflags | Как правило -pipe -Wall -O2 -march=вашпроцессор |
%rpmcxxflags | %optflags | Как правило -pipe -Wall -O2 -march=вашпроцессор |
%_aclocaldir | /usr/share/aclocal | Директория для m4 файлов. |
%fix_permissions | xargs -0 chmod 0775 find ./ -type f -print0 | xargs -0 chmod 0664 | Исправление доступа для директорий и файлов, начиная с текущего каталога |
%remove_repo_info | xargs -0 --no-run-if-empty rm -rf {} ; find ./ -type d -name CVS -print0 | xargs -0 --no-run-if-empty rm -rf {} ; | Удаление служебной информации о репозиториях cvs и svn |
%_locksubsysdir | /var/lock/subsys | |
%start_service() | [ -z "$DURING_INSTALL" ] && [ "$1" = "1" ] && /etc/rc.d/init.d/%{1} start
|
Запуск установленного пакета как сервиса |
%_sysconfigdir | %_sysconfdir/sysconfig | Расположение конфигурационных файлов для сервисов |
%groupadd | /usr/sbin/groupadd -r -f | Добавление cистемной группы (группы в которых gid < 499), даже если она существовала до этого |
%useradd | /usr/sbin/useradd -r | Добавление системного пользователя |