#/*! \page config_macros Default configuration: /usr/lib/rpm/macros # \verbatim # # $Id: macros.in,v 1.39.2.32 2012/05/06 22:36:51 jbj Exp $ # # This is a global RPM configuration file. All changes made here will # be lost when the rpm package is upgraded. Any per-system configuration # should be added to %{_etcrpm}/macros, while per-user configuration should # be added to ~/.rpmmacros. # #============================================================================== # Macro naming conventions: # # Macros that begin with an underscore are "local" in the sense that # they (if used) will not be exported in rpm headers. Some macros # that don't start with an underscore (but look like they should) # are compatible with macros generated by rpm-2.5.x and will be made # more consistent in a future release. # %_rpmversion 5.4.9 #============================================================================== # ---- A macro that expands to nothing. # %nil %{!?nil} #============================================================================== # ---- filesystem macros. # %_usr %{_usrlibrpm}/../.. %_usrsrc %{_usr}/src %_var %{_usr}/../var # The dynamic relocation code sets the following two items #%_usrlibrpm /usr/lib/rpm #%_etcrpm /etc/rpm %__objext o %__libext a %__shlibext so %__exeext %{nil} %_rpmhome %{_usrlibrpm} #============================================================================== # ---- RPM specific tool paths # %_usrlibrpmbin %{_usrlibrpm}/bin %__chroot %{_usrlibrpmbin}/chroot %__cp %{_usrlibrpmbin}/cp %__find %{_usrlibrpmbin}/find %__grep %{_usrlibrpmbin}/grep %__lua %{_usrlibrpmbin}/lua %__mtree %{_usrlibrpmbin}/mtree %__rc %{_usrlibrpmbin}/rc %__wget %{_usrlibrpmbin}/wget %__xar %{_usrlibrpmbin}/xar #============================================================================== # ---- Generally useful path macros. # %__awk gawk %__bash %{_bindir}/bash %__bzip2 %{_bindir}/bzip2 %__cat /bin/cat %__chattr %{_bindir}/chattr %__chgrp /bin/chgrp %__chmod /bin/chmod %__chown /bin/chown %__cpio /bin/cpio %__curl %{_bindir}/curl %__cvs %{_bindir}/cvs %__db_archive %{_bindir}/db53_archive %__db_checkpoint %{_bindir}/db53_checkpoint %__db_deadlock %{_bindir}/db53_deadlock %__db_dump %{_bindir}/db53_dump %__db_hotbackup %{_bindir}/db53_hotbackup %__db_load %{_bindir}/db53_load %__db_log_verify %{_bindir}/db53_log_verify %__db_printlog %{_bindir}/db53_printlog %__db_recover %{_bindir}/db53_recover %__db_replicate %{_bindir}/db53_replicate %__db_stat %{_bindir}/db53_stat %__dbsql %{_bindir}/db53sql %__db_sql_codegen %{_bindir}/db53_sql_codegen %__db_tuner %{_bindir}/db53_tuner %__db_upgrade %{_bindir}/db53_upgrade %__db_verify %{_bindir}/db53_verify %__diff /bin/diff %__ditto %{_bindir}/ditto %__file %{_bindir}/file %__git %{_bindir}/git %__gpg %{_bindir}/gpg2 %__gsr %{_bindir}/gsr %__gzip /bin/gzip %__hg %{_bindir}/hg %__id /usr/bin/id %__install /usr/bin/install %__install_info /sbin/install-info %__ldconfig /sbin/ldconfig %__ln /bin/ln %__ln_s ln -s %__lrzip /usr/bin/lrzip %__lsattr %{_bindir}/lsattr %__lzip /usr/bin/lzip %__lzma %{_bindir}/lzma %__lzop %{_bindir}/lzop %__make %{_bindir}/make %make %{__make} %__mkdir /bin/mkdir %__mkdir_p %{__mkdir} -p %__mongo %{_bindir}/mongo %__mv /bin/mv %__patch %{_bindir}/patch %__pax %{_bindir}/pax %__pgp %{_bindir}/pgp %__rm /bin/rm %__rmdir /bin/rmdir %__rsh %{_bindir}/rsh %__sed /bin/sed %__sh /bin/sh %__sqlite3 %{_bindir}/sqlite3 %__ssh %{_bindir}/ssh %__svn %{_bindir}/svn %__tar /bin/tar %__unzip %{_bindir}/unzip %__vcheck %{__perl} %{_rpmhome}/vcheck %__xz %{_bindir}/xz #============================================================================== # ---- Required macros. # Macros that used to be initialized as a side effect of parsing. # These are the default values that can be overridden by other # (e.g. per-platform, per-system, per-packager, per-package) macros. # # The directory where sources/patches will be unpacked and built. %_builddir %{_topdir}/BUILD # The interpreter used for build scriptlets. %_buildshell /bin/sh # The location of the rpm database file(s). %_dbpath %{_var}/lib/rpm # # Path to script that creates debug symbols in a /usr/lib/debug # shadow tree. # # A spec file can %%define _find_debuginfo_opts to pass options to # the script. See the script for details. # %__debug_install_post \ %{_rpmhome}/find-debuginfo.sh %{?_missing_build_ids_terminate_build:--strict-build-id} %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}"\ %{nil} # Template for debug information sub-package. %debug_package \ %ifnarch noarch\ %global __debug_package 1\ %package debug\ Summary: Debug information for package %{name}\ Group: Development/Debug\ AutoReqProv: 0\ %description debug\ This package provides debug information for package %{name}.\ Debug information is useful when developing applications that use this\ package or when debugging this package.\ %files debug -f debugfiles.list\ %defattr(-,root,root)\ %endif\ %{nil} %_defaultdocdir %{_usr}/doc # The path to the pgp executable (legacy, use %{__pgp} instead). %_pgpbin %{__pgp} # The directory where newly built binary packages will be written. %_rpmdir %{_topdir}/RPMS # A template used to generate the output binary package file name # (legacy). %_rpmfilename %{_build_name_fmt} # The default signature type. %_signature gpg # The directories where sources/patches/icons from a source package will # be installed. This is also where sources/patches/icons are found # when building. %_sourcedir %{_topdir}/SOURCES %_patchdir %{_sourcedir} %_icondir %{_sourcedir} # The directory where the spec file from a source package will be # installed. %_specdir %{_topdir}/SPECS # The directory where newly built source packages will be written. %_srcrpmdir %{_topdir}/SRPMS # The directory where buildroots will be created. %_buildrootdir %{_tmppath} # Build root path, where %install installs the package during build. %buildroot %{_buildrootdir}/%{name}-root # Directory where temporaray files can be created. %_tmppath %{_var}/tmp %tmpdir %{_tmppath} # Path to top of build area. %_topdir %{_usr}/src/rpm #============================================================================== # ---- Optional macros. # Macros that are initialized as a side effect of spec # file parsing. # # # Note: You should not configure with disturl (or build packages with # the DistURL: tag) unless you are willing to supply content in a # yet-to-be-determined format at the URL specified. # #%disturl # Boolean (i.e. 1 == "yes", 0 == "no") that controls whether files # marked as %doc should be installed. #%_excludedocs # The port and machine name of a FTP proxy host running TIS firewall. # #%_ftpport #%_ftpproxy # The signature to use and the location of configuration files for # signing packages with GNU gpg. # #%_gpg_name #%_gpg_path # The port and machine name of an HTTP proxy host. # #%_httpport #%_httpproxy # The PATH put into the environment before running %pre/%post et al. # %_install_helpers %{rpmhome}/helpers %_helperpath %{?_install_helpers:%{_install_helpers}:} %_install_script_path %{_helperpath}/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin # A colon separated list of desired locales to be installed; # "all" means install all locale specific files. # %_install_langs all # A colon separated list of paths where files should *not* be installed. # Usually, these are network file system mount points. # #%_netsharedpath # (experimental) # The type of pattern match used on rpmdb iterator selectors: # "default" simple glob-like regex, periods will be escaped, # splats will have period prepended, full "^...$" match # required. Also, file path tags will use glob(7). # "strcmp" compare strings # "regex" regex(7) patterns using regcomp(3)/regexec(3) # "glob" glob(7) patterns using fnmatch(3) # %_query_selector_match default # The signature to use and the location of configuration files for # signing packages with PGP. # #%_pgp_name #%_pgp_path #============================================================================== # ---- Development macros. # (Development) Use at your own risk. %__varlibwdj %{_var}/lib/wdj %__varcacherpm %{_var}/cache/rpm %__varcachewdj %{_var}/cache/wdj %__gitdir %{__varlibwdj}/git %__svndir %{__varlibwdj}/svn %__sqldir %{__varlibwdj}/sql %__l10ndir %{__varlibwdj}/l10n # Elements necessary to construct a mongodb:// URI configurably # %__mongodb_user luser %__mongodb_password %{nil} %__mongodb_host tempest.mongohq.com %__mongodb_port 10017 %__mongodb_database cooker %_mongodb mongodb://%{__mongodb_user}:%{__mongodb_password}@%{__mongodb_host}:%{__mongodb_port}/%{__mongodb_database} # Macros used for mongo shell import spewage templating # XXX non-functional atm, /usr/lib/rpm/qf *.mongo templates for now. %__mongodb_collection packages #============================================================================== # ---- Build configuration macros. # # # Path to magic file used for file classification. %_rpmfc_magic_path %{_usrlibrpm}/../../share/misc/magic.mgc # # Colon separated list of permitted arbitrary tag names %_arbitrary_tags_debian Priority:Essential:Depends:Predepends:Recommends:Suggests:Enhances:Breaks: $_arbitrary_tags_tests Foo:Bar %_arbitrary_tags %{_arbitrary_tags_debian} #============================================================================== # ---- Database configuration macros. # Macros used to configure Berkley db parameters. # # rpmdb macro configuration values are a colon (or white space) separated # list of tokens, with an optional '!' negation to explicitly disable bit # values, or a "=value" if a parameter. A per-tag value is used (e.g. # %_dbi_config_Packages) if defined, otherwise a per-rpmdb default # (e.g. %_dbi_config). # # The rpmdb configuration tokens are in a popt table in rpmdb/dbconfig.c, # see that for the latest gory details. Note carefully that, unless you # are writing an rpm installer, you shouldn't have to touch *any* of these # parameters. # # Use Berkeley DB transaction logging for rpmdb ACID behavior. # XXX the %{?__nofsync} is passed from the --nofsync popt alias on the rpm cli. %__dbi_txn create %{?__nofsync:nofsync} lock log mpool txn auto_commit thread thread_count=64 %__dbi_perms perms=0644 %__dbi_tmpdir tmpdir=%{_dbpath}/tmp %__dbi_other %{?__dbi_tmpdir} %{?__dbi_txn} %__dbi_transient %{?__dbi_rebuild} temporary private # database configuration: Berkeley-DB, Hash %__dbi_htconfig \ hash \ %{?__dbi_other}\ %{?__dbi_perms}\ %{nil} %_dbi_htconfig %{__dbi_htconfig} # database configuration: Berkeley-DB, Btree %__dbi_btconfig \ btree \ %{?__dbi_other}\ %{?__dbi_perms}\ %{nil} %_dbi_btconfig %{__dbi_btconfig} # database configuration: SQLite %__dbi_sqlconfig %{?__dbi_perms} %{?__dbi_tmpdir} %_dbi_sqlconfig %{__dbi_sqlconfig} # database tag configuration %_dbi_tags %{expand:%%{_dbi_tags_%{_dbapi_used}}} %_bt_dupsort bt_dupsort primary=Packages %_h_dupsort h_dupsort primary=Packages %_dbi_tags_3 Packages:Name:Version:Release:Arch:Os:Basenames:Group:Providename:Requirename:Conflictname:Obsoletename:Triggername:Dirnames:Installtid:Sigmd5:Sha1header:Filedigests:Pubkeys:Packagecolor:Nvra:Sourcepkgid:Filepaths:Seqno:Btree:Hash:Queue:Recno %_dbi_tags_4 Packages:Name:Version:Release:Arch:Os:Basenames:Group:Providename:Requirename:Conflictname:Obsoletename:Triggername:Dirnames:Installtid:Sigmd5:Sha1header:Filedigests:Pubkeys:Packagecolor:Nvra:Sourcepkgid:Filepaths:Seqno # database configuration: Berkeley-DB [dbapi 3 hooks] %_dbi_config_3 %{_dbi_btconfig} %_dbi_config_3_Arch %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Basenames %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Conflictname %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Conflictyamlentry %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Dirnames %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Filedigests %{_dbi_htconfig} %{?_h_dupsort} %_dbi_config_3_Filepaths %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Group %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Installtid %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Name %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Nvra %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Obsoletename %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Obsoleteyamlentry %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Os %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Packagecolor %{_dbi_htconfig} %{?_h_dupsort} %_dbi_config_3_Providename %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Provideyamlentry %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Pubkeys %{_dbi_htconfig} %{?_h_dupsort} %_dbi_config_3_Release %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Removetid %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Requirename %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Requireyamlentry %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Sha1header %{_dbi_htconfig} %{?_h_dupsort} %_dbi_config_3_Sigmd5 %{_dbi_htconfig} %{?_h_dupsort} %_dbi_config_3_Sourcepkgid %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Triggername %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Version %{_dbi_btconfig} %{?_bt_dupsort} %_dbi_config_3_Packages %{_dbi_btconfig} %_dbi_config_3_Depcache %{_dbi_btconfig} temporary private %_dbi_config_3_Seqno %{_dbi_btconfig} seq_id=0 %_dbi_config_3_Btree btree %{?__dbi_perms} debug %_dbi_config_3_Hash hash %{?__dbi_perms} debug %_dbi_config_3_Queue queue %{?__dbi_perms} debug %_dbi_config_3_Recno recno %{?__dbi_perms} debug %_dbi_config_3_Heap heap %{?__dbi_perms} debug # database configuration: SQLite [dbapi 4 hooks] %_dbi_config_4 %{_dbi_sqlconfig} %_dbi_config_4_Arch %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Basenames %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Conflictname %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Conflictyamlentry %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Dirnames %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Filedigests %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Filepaths %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Group %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Installtid %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Name %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Nvra %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Obsoletename %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Obsoleteyamlentry %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Os %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Packagecolor %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Providename %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Provideyamlentry %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Pubkeys %{_dbi_sqlconfig} %{?_bt_dupsort} debug %_dbi_config_4_Release %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Removetid %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Requirename %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Requireyamlentry %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Sha1header %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Sigmd5 %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Sourcepkgid %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Triggername %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Version %{_dbi_sqlconfig} %{?_bt_dupsort} %_dbi_config_4_Packages %{_dbi_sqlconfig} %_dbi_config_4_Depcache %{_dbi_sqlconfig} temporary private %_dbi_config_4_Seqno %{_dbi_sqlconfig} seq_id=0 # database configuration [code entry hooks] %_dbi_config %{expand:%%{_dbi_config_%{_dbapi_used}}} %_dbi_config_Arch %{expand:%%{_dbi_config_%{_dbapi_used}_Arch}} %_dbi_config_Basenames %{expand:%%{_dbi_config_%{_dbapi_used}_Basenames}} %_dbi_config_Conflictname %{expand:%%{_dbi_config_%{_dbapi_used}_Conflictname}} %_dbi_config_Conflictyamlentry %{expand:%%{_dbi_config_%{_dbapi_used}_Conflictyamlentry}} %_dbi_config_Dirnames %{expand:%%{_dbi_config_%{_dbapi_used}_Dirnames}} %_dbi_config_Filedigests %{expand:%%{_dbi_config_%{_dbapi_used}_Filedigests}} %_dbi_config_Filepaths %{expand:%%{_dbi_config_%{_dbapi_used}_Filepaths}} %_dbi_config_Group %{expand:%%{_dbi_config_%{_dbapi_used}_Group}} %_dbi_config_Installtid %{expand:%%{_dbi_config_%{_dbapi_used}_Installtid}} %_dbi_config_Name %{expand:%%{_dbi_config_%{_dbapi_used}_Name}} %_dbi_config_Nvra %{expand:%%{_dbi_config_%{_dbapi_used}_Nvra}} %_dbi_config_Obsoletename %{expand:%%{_dbi_config_%{_dbapi_used}_Obsoletename}} %_dbi_config_Obsoleteyamlentry %{expand:%%{_dbi_config_%{_dbapi_used}_Obsoleteyamlentry}} %_dbi_config_Os %{expand:%%{_dbi_config_%{_dbapi_used}_Os}} %_dbi_config_Packagecolor %{expand:%%{_dbi_config_%{_dbapi_used}_Packagecolor}} %_dbi_config_Providename %{expand:%%{_dbi_config_%{_dbapi_used}_Providename}} %_dbi_config_Provideyamlentry %{expand:%%{_dbi_config_%{_dbapi_used}_Provideyamlentry}} %_dbi_config_Pubkeys %{expand:%%{_dbi_config_%{_dbapi_used}_Pubkeys}} %_dbi_config_Release %{expand:%%{_dbi_config_%{_dbapi_used}_Release}} %_dbi_config_Removetid %{expand:%%{_dbi_config_%{_dbapi_used}_Removetid}} %_dbi_config_Requirename %{expand:%%{_dbi_config_%{_dbapi_used}_Requirename}} %_dbi_config_Requireyamlentry %{expand:%%{_dbi_config_%{_dbapi_used}_Requireyamlentry}} %_dbi_config_Sha1header %{expand:%%{_dbi_config_%{_dbapi_used}_Sha1header}} %_dbi_config_Sigmd5 %{expand:%%{_dbi_config_%{_dbapi_used}_Sigmd5}} %_dbi_config_Sourcepkgid %{expand:%%{_dbi_config_%{_dbapi_used}_Sourcepkgid}} %_dbi_config_Triggername %{expand:%%{_dbi_config_%{_dbapi_used}_Triggername}} %_dbi_config_Version %{expand:%%{_dbi_config_%{_dbapi_used}_Version}} %_dbi_config_Packages %{expand:%%{_dbi_config_%{_dbapi_used}_Packages}} %_dbi_config_Depcache %{expand:%%{_dbi_config_%{_dbapi_used}_Depcache}} %_dbi_config_Seqno %{expand:%%{_dbi_config_%{_dbapi_used}_Seqno}} # Database API configuration: # # 0,1: Berkeley-DB 1.x API (no longer supported) # 2: Berkeley-DB 2.x API (no longer supported) # 3: Berkeley-DB 3.x/4.x API (default) # 4: SQLite 3.x API (alternative) # # There are different macros so that --rebuilddb can convert the # database between formats (usually for upgrading purposes) # %_dbapi 3 %_dbapi_used %{_dbapi} # # Export package NEVRA (stamped with install tid) info for HRMIB on this path. # # XXX Note: escaped %% for use in headerSprintf() #%_hrmib_path /var/cache/hrmib/%{___NVRA} #============================================================================== # ---- GPG/PGP/PGP5 signature macros. # Macro(s) to hold the arguments passed to GPG/PGP for package # signing and verification. # %__gpg_check_password_cmd %{__gpg} \ gpg --batch --no-verbose --passphrase-fd 3 -u "%{_gpg_name}" -so - #%__pgp_check_password_cmd %{__pgp} \ # pgp +batchmode=on +verbose=0 "%{_pgp_name}" -sf #%__pgp5_check_password_cmd %{__pgp} \ # pgps +batchmode=on +verbose=0 +armor=off "%{_pgp_name}" -f %__gpg_sign_cmd %{__gpg} \ gpg --batch --no-verbose --no-armor --passphrase-fd 3 --no-secmem-warning \ -u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename} #%__pgp_sign_cmd %{__pgp} \ # pgp +batchmode=on +verbose=0 +armor=off \ # "+myname=%{_pgp_name}" -sb %{__plaintext_filename} %{__signature_filename} #%__pgp5_sign_cmd %{__pgp} \ # pgps +batchmode=on +verbose=0 +armor=off \ # "+myname=%{_pgp_name}" -b %{__plaintext_filename} -o %{__signature_filename} # rpm-5.0 and later verifies signatures internally using beecrypt/NSS/openssl #%__gpg_verify_cmd %{__gpg} \ # gpg --batch --no-verbose --verify --no-secmem-warning \ # %{__signature_filename} %{__plaintext_filename} #%__pgp_verify_cmd %{__pgp} \ # pgp +batchmode=on +verbose=0 \ # %{__signature_filename} %{__plaintext_filename} #%__pgp5_verify_cmd %{__pgp} \ # pgpv +batchmode=on +verbose=0 \ # +OutputInformationFD=1 +OutputWarningFD=1 \ # -o %{__signature_filename} %{__plaintext_filename} # # XXX rpm-4.1 verifies prelinked libraries using a prelink undo helper. # Normally this macro is defined in %{_etcrpm}/macros.prelink, installed # with the prelink package. If the macro is undefined, then prelinked # shared libraries contents are MD5 digest verified (as usual), rather # than MD5 verifying the output of the prelink undo helper. # # Note: The 2nd token is used as argv[0] and "library" is a # placeholder that will be deleted and replaced with the appropriate # library file path. #%__prelink_undo_cmd /usr/sbin/prelink prelink -y library # Horowitz Key Protocol server configuration # #%_hkp_keyserver hkp://keys.n3npq.net %_hkp_keyserver hkp://pool.sks-keyservers.net %_hkp_keyserver_query %{_hkp_keyserver}/pks/lookup?op=get&search= %_nssdb_path /etc/pki/nssdb #============================================================================== # ---- Transaction macros. # Macro(s) used to parameterize transactions. # # The default transaction color. This value is a set of bits to # determine file and dependency affinity for this arch. # 0 uncolored (i.e. use only arch as install hint) # 1 Elf32 permitted # 2 Elf64 permitted # 4 MIPS reserved %_transaction_color 3 # A default autorelocation path prefixed to file paths of packages # that have an incompatible arch. This is used on ia64 to prefix # /emul/ia32 to i386 file paths, and nowhere else (yet). # # XXX Note: escaped %% for use in headerSprintf() #%_autorelocate_path %{nil} # A default directory color to choose when directories are # auto-relocated. #%_autorelocate_dcolor 0 # Open all indices before doing chroot(2). # %_openall_before_chroot 1 # The path to the dependency universe database. The default value # is the rpmdb-vendor location. The macro is usually defined in # %{_etcrpm}/macros.solve, installed with the rpmdb-vendor package. #%_solve_dbpath /usr/lib/rpmdb/%{_arch}-%{_vendor}-%{_os}/rpm # The path to the dependency universe packages. This should # be a path to the packages contained in the solve database. # # XXX Note: needs a pesky trailing / #%_solve_pkgsdir /mnt/rpm/test/latest-i386/RedHat/RPMS/ # The output binary package file name template used when suggesting # binary packages that solve a dependency. The macro is usually defined # in %{_etcrpm}/macros.solve, installed with the rpmdb-vendor package. # # XXX Note: escaped %% for use in headerSprintf() #%_solve_name_fmt %{?_solve_pkgsdir}%{___NVRA}.rpm # The output binary package file name template used when repackaging # erased packages. # # XXX Note: escaped %% for use in headerSprintf() %_repackage_name_fmt %{___NVRA}.rpm # The "transactional rollback" directory in which erased packages will # be saved when using the --repackage option. %_repackage_dir %{_var}/spool/repackage # A path (i.e. URL) prefix that is pre-pended to %{_repackage_dir}. %_repackage_root %{nil} # If non-zero, all erasures will be automagically repackaged. %_repackage_all_erasures 0 # Prevent pure erasure transactions with --rollback. Pure # erasure rollback transactions will undo an anaconda install, # for example, which %_unsafe_rollbacks tries to prevent. # # Set this to non-zero at your own risk, it's dangerous. %_unsafe_rollbacks 0 # Automate transaction rollbacks on upgrade failure. # # Set this to non-zero at your own risk, it's dangerous. %_rollback_transaction_on_failure 0 # Verify digest/signature flags for various rpm modes: # 0x30300 (_RPMVSF_NODIGESTS) --nohdrchk if set, don't check digest(s) # 0xc0c00 (_RPMVSF_NOSIGNATURES) --nosignature if set, don't check signature(s) # 0xf0000 (_RPMVSF_NOPAYLOAD) --nolegacy if set, check header+payload (if possible) # 0x00f00 (_RPMVSF_NOHEADER) --nohdrchk if set, don't check rpmdb headers # # For example, the value 0xf0c00 (=0xf0000+0xc0c00) disables legacy # digest/signature checking, disables signature checking, but attempts # digest checking, also when retrieving headers from the database. # # The checking overhead was ~11ms per header for digests/signatures on # a 600 Mhz Dell SMP server circa 1998. # # Each header from the database is checked only when first encountered # for each database open. # # Note: the %_vsflags_erase applies to --upgrade/--freshen modes as # well as --erase. # %__vsflags 0xf0000 %_vsflags_build %{__vsflags} %_vsflags_erase %{__vsflags} %_vsflags_install %{__vsflags} %_vsflags_query %{__vsflags} %_vsflags_verify %{__vsflags} # Choose keyutils keyring type: # # group KEY_SPEC_GROUP_KEYRING # process KEY_SPEC_PROCESS_KEYRING # session KEY_SPEC_SESSION_KEYRING # thread KEY_SPEC_THREAD_KEYRING # user KEY_SPEC_USER_KEYRING # user_session KEY_SPEC_USER_SESSION_KEYRING # %_keyutils_keyring process # Relations between package names that cause dependency loops # with legacy packages that cannot be fixed. Relations are # specified as # p>q # where package p has a Requires: on something that package q Provides: # # XXX Note: that there cannot be any whitespace within the string "p>q", # and that both p and q are package names (i.e. no version/release). # %_dependency_whiteout_caos_core \ perl>perl-Filter \ pam>coreutils \ pam>initscripts \ glibc-common>glibc \ glibc>nscd \ filesystem>setup %_dependency_whiteout \ %{?_dependency_whiteout_caos_core} \ %{?_dependency_whiteout_system} \ %{nil} # # Default path used for serializing transactions with a fcntl lock. # # The original, FHS clompliant, path was /var/lock/run/transaction, # but the transaction lock needs to be finer grained, at least # per-database, not global, for many rpm operations with transaction sets. # # The fcntl lock is now off by default, posix mutexes (or equiv) are sufficient. # to protect Berkeley DB data, and using multiple databases with concurrent # access is a more important feature to rpm than serializing transaction # sets. Change your configuration if you disagree. # # XXX Note: the suggested file name is __db.000 to expedite # support issues, because users typically do "rm -f /var/lib/rpm/__db*", # which will clean up the fcntl lock at the same time. #%_rpmlock_path %{_dbpath}/__db.000 #============================================================================== # ---- Query macros. # # Default query format string for displaying package names everywhere %___NVRA %%{NAME}-%%{VERSION}-%%{RELEASE}%%|DISTTAG?{-%%{DISTTAG}%%|DISTEPOCH?{%%{DISTEPOCH}}|}|%%|ARCH?{.%%|SOURCERPM?{%%{ARCH}}:{src}|}:{}| # Default headerSprintf() output format string for rpm -qa # # XXX Note: escaped %% for use in headerSprintf() %_query_all_fmt %{___NVRA} # # Path for rpm -qH (default is /usr/share/comps/%{_arch}/hdlist) %_query_hdlist_path %{_datadir}/comps/%{_arch}/hdlist # # Permit network access? (".fdio" prohibits network access) %_rpmgio .fdio # # Pattern matching for installation via "+N-V-R.A" CLI arguments #%_rpmgi_pattern_glob() %{_rpmdir}/%1-*-*.*.rpm %_rpmgi_pattern_glob %{_rpmdir}/*/ %_rpmgi_pattern_regex() ^.+/%1-[^-]+-[^-]+\\.[^.]+\\.rpm$ # # UUIDv3/UUIDv5 namespace URI macros. The complete canonical path is # %_uuid_uri %{?_uuid_auth}/%{?_uuid_path}/Tagname/Tagvalue %_uuid_auth http://rpm5.org/ %_uuid_path /package #============================================================================== # ---- EVRD... dependency tuple comparison macros. # # STEP 1: Match the string and capture regex parts # 1 2 3 4 # X ":" X "-"X ":"X %evr_tuple_match ^(?:([^:-]+):)?([^:-]+)(?:-([^:-]+))?(?::([^:-]+))?$ # STEP 2: Assemble tuple from regex parts # case 1: case 2: case 3: case 4: case 5: case 6: # X:X-X:X X:X-X X:X X: X-X X # %evr_tuple_select 1234 123_ 12__ 1___ _23_ _2__ %evr_tuple_select 123_ # STEP 3: Configure the comparison order of the tuple elements %evr_tuple_order EVR # data validation patterns for identifier tags %pattern_Name ^[A-Za-z0-9][A-Za-z0-9+._-]*$ %pattern_Epoch ^[0-9]+$ %pattern_Version ^[A-Za-z0-9+._]+$ %pattern_Release ^[A-Za-z0-9+._]+$ %pattern_Disttag ^[A-Za-z0-9]+$ %pattern_Repotag ^[A-Za-z0-9]+$ %pattern_Distepoch ^[A-Za-z0-9.]+$ #%pattern_Url #%pattern_Cvsid #%pattern_Group #%pattern_Summary #%pattern_Distribution #%pattern_Vendor #%pattern_License #%pattern_Packager #%pattern_Buildroot #%pattern_Keywords #%pattern_Variants #%pattern_Prefixes #%pattern_Docdir #%pattern_Xmajor #%pattern_Xminor #%pattern_Autoreqprov #%pattern_Autoreq #%pattern_Autoprov #%pattern_Source #%pattern_Patch #%pattern_Icon #%pattern_Nosource #%pattern_Nopatch #%pattern_Buildprereq #%pattern_Buildprovides #%pattern_Buildrequires #%pattern_Buildconflicts #%pattern_Buildobsoletes #%pattern_Buildsuggests #%pattern_Buildenhances #%pattern_Prereq #%pattern_Provideflags #%pattern_Requireflags #%pattern_Conflictflags #%pattern_Obsoleteflags #%pattern_Suggestsflags #%pattern_Enhancesflags #%pattern_Buildplatforms #%pattern_Excludearch #%pattern_Exclusivearch #%pattern_Excludeos #%pattern_Exclusiveos #%pattern_Buildarchs #============================================================================== # ---- Run-time probe dependency macros. # %_rpmds_filter_name archfilter # %_rpmds_cpuinfo_path /proc/cpuinfo # %_rpmds_sysinfo_path %{_etcrpm}/sysinfo # %_rpmds_ldconfig_cmd /sbin/ldconfig -p %_rpmds_ldconfig_cache /etc/ld.so.cache # A colon-separated list of directories which should match the rld's # (runtime loader) list of directories it searches for shared objects. # Only used on platforms that don't have a configurable loader search # path via ldconfig, crle, or something similar. #%_rpmds_rld_search_path /lib:/usr/lib # # Full path and arguments to Solaris' command to list what directories # the runtime loader searches. Needs to include `-64' for LP64 Solaris # systems. #%_rpmds_crle_cmd /usr/bin/crle # %_rpmds_getconf_path / # %_rpmds_perldeps_cmd %{__find} %{_libdir}/perl5 | %{_rpmhome}/perl.prov # %_varrun /var/run #============================================================================== # ---- Cache configuration macros. # Macro(s) used to configure the universe of headers used to # solve dependencies using rpmcache(8). # # Note: These values were specific to my machine, and most certainly # are incorrect for any other machine. The macros are # included here only to document the macro names and usage. #%_bhpath file://localhost/mnt/dist #%_bhcoll @(7.3|7.2|7.1|7.1sbe|7.1k|7.0|7.01j|7.0j|7.0sbe|7.0tc|6.2|6.2ha|6.2ee|6.1|6.0|5.2|5.1|5.0) #%_bhN @(SRPMS|i386|alpha|sparc|s390|ia64) #%_bhVR @(RedHat|Fedora) #%_bhA RPMS # # A configuration to build an rpmdb from yum package hierarchy %_bhpath file://%{_varcachewdj} %_bhcoll @(updates) %_bhN @(packages) %_bhVR %{nil} %_bhA %{nil} # The cache database directory. %_cache_dbpath %{_varcachewdj}/rpmdb #============================================================================== # ---- per-platform macros. # Macros that are specific to an individual platform. The values here # will be used if the per-platform macro file does not exist.. # %_arch arm %_build_arch arm %_vendor poky %_os linux-gnueabi %_gnu -gnu %_host_platform %{_host_cpu}-%{_host_vendor}-%{_host_os}%{?_host_gnu}%{!?_host_gnu:%{?_gnu}} %_build_platform %{_build_cpu}-%{_build_vendor}-%{_build_os}%{?_host_gnu}%{!?_host_gnu:%{?_gnu}} %_target_platform %{_target_cpu}-%{_target_vendor}-%{_target_os}%{?_host_gnu}%{!?_host_gnu:%{?_gnu}} #============================================================================== # ---- configure macros. # Macro(s) slavishly copied from autoconf's config.status. # %_prefix /usr %_exec_prefix %{_prefix} %_datarootdir %{_prefix}/share %_bindir %{_exec_prefix}/bin %_sbindir %{_exec_prefix}/sbin %_libexecdir %{_exec_prefix}/libexec %_datadir %{_datarootdir} %_sysconfdir %{_prefix}/etc %_sharedstatedir %{_prefix}/com %_localstatedir %{_prefix}/var %_lib lib %_libdir %{_exec_prefix}/%{_lib} %_includedir %{_prefix}/include %_oldincludedir /usr/include %_infodir %{_datarootdir}/info %_mandir %{_datarootdir}/man %_localedir %{_datarootdir}/locale %_lispdir %{_datarootdir}/emacs/site-lisp %_initddir %{_sysconfdir}/rc.d/init.d # This is a deprecated misspelling, present for backwards compatibility. %_initrddir %{_initddir} #--------------------------------------------------------------------- # Multilibs %_multilibpatt (/%{_lib}|/usr/%{_lib}(|/gconv)|/usr/local/%{_lib}|/usr/X11R6/%{_lib}|/opt/%{_lib})/[^/]*\\.([oa]|la|so[0-9.]*)$ #============================================================================== # ---- config.guess platform macros. # Macro(s) similar to the tokens used by configure. # %_build %{_host} %_build_alias %{_host_alias} %_build_cpu %{_host_cpu} %_build_vendor %{_host_vendor} %_build_os %{_host_os} %_host arm-poky-linux-gnueabi %_host_alias arm-poky-linux-gnueabi%{nil} %_host_cpu %{?_platform_cpu}%{!?_platform_cpu:%{_arch}} %_host_vendor %{?_platform_vendor}%{!?_platform_vendor:%{_vendor}} %_host_os %{?_platform_os}%{!?_platform_os:%{_os}} %_host_gnu %{?_platform_gnu}%{!?_platform_gnu:%{_gnu}} %_target %{_host} %_target_alias %{_host_alias} %_target_cpu %{_host_cpu} %_target_vendor %{_host_vendor} %_target_os %{_host_os} #------------------------------------------------------------------------ # lua macros # #%rpm_license_check %{expand:%%define rpm_license_check %{lua:\ #f = io.open("/dev/tty", "w")\ #if f then\ # f:write ("\\nJust checking to see who is using rpm-5.4.9.\\nThe RPM Package Manager license is LGPL, as always.\\nRelax ...\\n")\ # f:close()\ #end\ #}1}%{rpm_license_check} #------------------------------------------------------------------------ # executable(...) configuration. # # Path to scripts to autogenerate executable(foo) script dependencies, # # Note: Used iff _use_internal_dependency_generator is non-zero. The # helpers are also used by %{_rpmhome}/rpmdeps {--provides|--requires}. #%__executable_provides %{_rpmhome}/executabledeps.sh --provides #%__executable_requires %{_rpmhome}/executabledeps.sh --requires #%%__scriptlet_requires %{__bash} --rpm-requires #============================================================================== # ---- embedded inyterpreter macros. # # Embedded interpreter commands run when an interpreter is instantiated. # %_luaI_init %{nil} %_tclI_init %{nil} %_perlI_init use RPM;\ %{nil} %_rubyI_init %{nil} %_pythonI_init import rpm\ %{nil} #============================================================================== # XXX Caveat: # XXX With %{load:...} being interpreted immediately -- not lazily -- # XXX within a macro init file, a failure to load causes immediate loading # XXX termination silently. # XXX # XXX So the order as well as the existence of the %{load:...} macros below # XXX are critically important. # XXX # XXX Note also that loaded macro files can NOT recursively load other # XXX macro files; only a top-level (i.e. after --macros, or within a *.spec) # XXX file is permitted to do %{load:...}. The reason for the rule is to # XXX prevent recursive loops: there's no known need for immediate loading # XXX EXCEPT as a construction artifact while splitting rpmbuild macros # XXX from other structural configuration (like paths and booleans) used # XXX for configuring RPM itself. # XXX # XXX Simple example(s): # XXX If the file %{_usrlibrpm}/macros.d/selinux doesn't exist, # XXX then %{_usrlibrpm}/macros.rpmbuild will NOT be loaded. # XXX # XXX if the file %{_usrlibrpm}/macros.d/cmake attempts another # XXX %{load:...}, then loading will CEASE at that point in the file. #============================================================================== # ---- SELinux configuration macros. #%%{load:%{_usrlibrpm}/macros.d/selinux} #============================================================================== # ---- rpmbuild macros. %{load:%{_usrlibrpm}/macros.rpmbuild} #------------------------------------------------------------------------ # cmake(...) configuration #%%{load:%{_usrlibrpm}/macros.d/cmake} #------------------------------------------------------------------------ # gstreamer(...) configuration. #%%{load:%{_usrlibrpm}/macros.d/gstreamer} #------------------------------------------------------------------------ # haskell(...) configuration. #%%{load:%{_usrlibrpm}/macros.d/haskell} #------------------------------------------------------------------------ # perl(...) configuration %{load:%{_usrlibrpm}/macros.d/perl} #------------------------------------------------------------------------ # python(...) configuration. %{load:%{_usrlibrpm}/macros.d/python} #------------------------------------------------------------------------ # php(...) configuration. %{load:%{_usrlibrpm}/macros.d/php} #------------------------------------------------------------------------ # java(...) configuration. #%%{load:%{_usrlibrpm}/macros.d/java} #------------------------------------------------------------------------ # libtool(...) configuration. %{load:%{_usrlibrpm}/macros.d/libtool} #------------------------------------------------------------------------ # pkgconfig(...) configuration. %{load:%{_usrlibrpm}/macros.d/pkgconfig} #------------------------------------------------------------------------ # mono(...) configuration. #%%{load:%{_usrlibrpm}/macros.d/mono} #------------------------------------------------------------------------ # ruby(...) configuration. #%%{load:%{_usrlibrpm}/macros.d/ruby} #------------------------------------------------------------------------ # tcl(...) configuration. %{load:%{_usrlibrpm}/macros.d/tcl} #------------------------------------------------------------------------ # typelib(...) configuration. #%%{load:%{_usrlibrpm}/macros.d/typelib} # \endverbatim #*/