RPMMacrosDescription: различия между версиями
Andyc (обсуждение | вклад) Нет описания правки |
Andyc (обсуждение | вклад) Нет описания правки |
||
Строка 126: | Строка 126: | ||
|%java_dir %_javadir | |%java_dir %_javadir | ||
|/usr/share/java | |/usr/share/java | ||
| | |Директория для некоторых jar файлов. | ||
|- | |- | ||
|%java_docdir %_javadocdir | |%java_docdir %_javadocdir | ||
|/usr/share/javadoc | |/usr/share/javadoc | ||
| | | | ||
|- | |- | ||
|%_rpmmacrosdir | |%_rpmmacrosdir | ||
|/etc/rpm/macros.d | |/etc/rpm/macros.d | ||
| | |Директория для установки сторонних макросов | ||
|- | |- | ||
|%rpmcflags | |%rpmcflags | ||
|%optflags | |%optflags | ||
| | |Как правило -pipe -Wall -O2 -march=вашпроцессор | ||
|- | |- | ||
|%rpmcxxflags | |%rpmcxxflags | ||
|%optflags | |%optflags | ||
| | |Как правило -pipe -Wall -O2 -march=вашпроцессор | ||
|- | |- | ||
|%_aclocaldir | |%_aclocaldir | ||
|/usr/share/aclocal | |/usr/share/aclocal | ||
| | |Директория для m4 файлов. | ||
|- | |- | ||
|%fix_permissions | |%fix_permissions | ||
|find ./ -type d -print0 | xargs -0 chmod 0775 find ./ -type f -print0 | xargs -0 chmod 0664 | |find ./ -type d -print0 | xargs -0 chmod 0775 find ./ -type f -print0 | xargs -0 chmod 0664 | ||
| | |Исправление доступа для директорий и файлов, начиная с текущего каталога | ||
|- | |- | ||
|%remove_repo_info | |%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 {} ; | |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 | |%_locksubsysdir | ||
Строка 162: | Строка 162: | ||
|%start_service() | |%start_service() | ||
|[ -z "$DURING_INSTALL" ] && [ "$1" = "1" ] && /etc/rc.d/init.d/%{1} start || : | |[ -z "$DURING_INSTALL" ] && [ "$1" = "1" ] && /etc/rc.d/init.d/%{1} start || : | ||
| | |Запуск установленного пакета как сервиса. | ||
|- | |- | ||
|%nil | |%nil | ||
Строка 170: | Строка 170: | ||
|%groupadd | |%groupadd | ||
|/usr/sbin/groupadd -r -f | |/usr/sbin/groupadd -r -f | ||
| | |Добавление cистемной группы (группы в которых gid < 499), даже если она существовала до этого | ||
|- | |- | ||
|%useradd | |%useradd | ||
|/usr/sbin/useradd -r | |/usr/sbin/useradd -r | ||
| | |Добавление системного пользователя | ||
|- | |- | ||
|} | |} |
Версия от 23:06, 10 января 2010
Макросы RPM
Данная страница содержит описания макросов, специфичных для ALT Linux.
Cписок макросов
На данный момент (02.12.2009) список пакетов таков:
$ apt-cache search rpm | grep ^rpm-[a-z] | sort -n | head -n -2 rpm-build-apache2 - Набор утилит для автоматической Web серверов и приложений rpm-build-apache - Набор утилит для автоматической Web серверов и приложений 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 and extensions in rpm build rpm-build-compiz - RPM macros for sawfish-related packages rpm-build-docs-experimental - Набор утилит и макросов для автоматической сборки документации rpm-build-docs - Набор утилит и макросов для автоматической сборки документации 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 build fonts packages rpm-build-fpc - RPM helpers for Free Pascal packages rpm-build-gmpc - RPM macros for building GMPC plugins rpm-build-gnome - RPM macros and helper scripts for GNOME packages building rpm-build-haskell - RPM helpers to rebuild Haskell packages rpm-build-java - RPM helper macros to build Java packages rpm-build-kernel - RPM macros to build kernel packages 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-mingw32 - MinGW RPM helper macros rpm-build-mono - RPM helper macros and dependency utils to build Mono packages rpm-build-moodle - RPM helper macros and dependency utils to build Mooodle packages rpm-build-mozilla.org - RPM helpers to build Mozilla.org packages rpm-build-NetSDS - RPM helper macros to rebuild NetSDS packages rpm-build-ocaml - RPM helpers to rebuild OCaml packages rpm-build-pear - RPM helper scripts for build PEAR packages rpm-build-pecl - RPM helper scripts for build PECL packages rpm-build-perl - RPM helper scripts to calculate Perl dependencies rpm-build-php5 - RPM helper macros to rebuild PHP5 packages rpm-build-python - RPM helper macros to rebuild python packages rpm-build-python-tools - diagnostic tools rpm-build-rpm-eval - Скрипт раскрывающий макросы в файлах rpm-build-ruby - RPM helper scripts to calculate Ruby dependencies rpm-build-sawfish - RPM macros for sawfish-related packages rpm-build-seamonkey - RPM helper macros to rebuild seamonkey packages rpm-build-sunbird - RPM helper macros to rebuild sunbird packages 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-vhosts-filesystem - RPM макросы сборки для пакетов, обслуживающих разделяемый контент rpm-build-vim - RPM macros needed to build additional VIM plugin packages rpm-build-webserver-common - Набор утилит для автоматической Web серверов и приложений 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-xfce4 - : Макросы для удобной сборки Xfce rpm-build-xscreensaver - A screen saver and locker for the X window system - RPM macros rpm-build - Файлы, необходимые для установки SRPM-пакетов и сборки RPM-пакетов 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 макросы для веб-сервера Apache2 rpm-macros-apache2 - RPM макросы для веб-сервера Apache2 rpm-macros-apache - RPM макросы для веб-сервера Apache rpm-macros-branch - RPM макросы поддержки бранчей 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-emacs - Set of RPM macros for packaging emacs-devel-based applications rpm-macros-erlang - RPM helper macros to rebuild erlang packages rpm-macros-fillup - Set of RPM macros for packaging fillup-based applications rpm-macros-info-install - Set of RPM macros for packaging texinfo files rpm-macros-jabber - Set of RPM macros for packaging Jabber servers and components rpm-macros-mingw32 - MinGW RPM helper macros rpm-macros-mpi-selector - Set of RPM macros for packaging mpi-selector-based applications rpm-macros-qt4 - Set of RPM macros for packaging qt4-based applications rpm-macros-rpm-eval - RPM макросы для применения rpm-eval.sh rpm-macros-vhosts-filesystem - RPM макросы для пакетов, обслуживающих разделяемый контент rpm-macros-webserver-cgi-bin-control - RPM макросы для сборки пакетов веб-серверов и приложений rpm-macros-webserver-common - RPM макросы для сборки пакетов веб-серверов и приложений 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 %имя_макроса
Например, нам надо узнать, во что раскрывается макрос %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 | /etc/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 | : | Запуск установленного пакета как сервиса. |
%nil | |||
%groupadd | /usr/sbin/groupadd -r -f | Добавление cистемной группы (группы в которых gid < 499), даже если она существовала до этого | |
%useradd | /usr/sbin/useradd -r | Добавление системного пользователя |