2002-08-23 03:21:14 +08:00
|
|
|
#/*! \page config_macros Default configuration: @RPMCONFIGDIR@/macros
|
2001-03-18 03:55:09 +08:00
|
|
|
# \verbatim
|
|
|
|
#
|
2005-07-21 09:45:44 +08:00
|
|
|
# $Id: macros.in,v 1.154.2.6 2005/07/21 01:45:44 jbj Exp $
|
2000-08-28 23:25:04 +08:00
|
|
|
#
|
|
|
|
# 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 /etc/rpm/macros, while per-user configuration should
|
|
|
|
# be added to ~/.rpmmacros.
|
|
|
|
#
|
1998-08-02 23:03:54 +08:00
|
|
|
#==============================================================================
|
|
|
|
# Macro naming conventions (preliminary):
|
|
|
|
#
|
|
|
|
# Macros that begin with an underscore are "local" in the sense that
|
1999-03-21 05:09:47 +08:00
|
|
|
# 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.
|
1998-08-02 23:03:54 +08:00
|
|
|
#
|
|
|
|
|
1999-05-15 02:59:43 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- A macro that expands to nothing.
|
|
|
|
#
|
2001-02-12 06:02:29 +08:00
|
|
|
%nil %{!?nil}
|
1999-05-15 02:59:43 +08:00
|
|
|
|
1998-08-02 23:03:54 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- filesystem macros.
|
|
|
|
#
|
1998-10-20 19:54:13 +08:00
|
|
|
%_usr @prefix@
|
|
|
|
%_usrsrc %{_usr}/src
|
|
|
|
%_var @varprefix@
|
1998-08-02 23:03:54 +08:00
|
|
|
|
|
|
|
#==============================================================================
|
1999-11-20 02:19:41 +08:00
|
|
|
# ---- Generally useful path macros.
|
1999-03-28 08:47:40 +08:00
|
|
|
#
|
1999-11-20 02:19:41 +08:00
|
|
|
%__awk @AWK@
|
2001-02-12 06:02:29 +08:00
|
|
|
%__bzip2 @BZIP2BIN@
|
1999-04-16 13:44:36 +08:00
|
|
|
%__cat @__CAT@
|
|
|
|
%__chgrp @__CHGRP@
|
|
|
|
%__chmod @__CHMOD@
|
|
|
|
%__chown @__CHOWN@
|
|
|
|
%__cp @__CP@
|
|
|
|
%__cpio @__CPIO@
|
2001-06-16 05:52:47 +08:00
|
|
|
%__file @__FILE@
|
|
|
|
%__gpg @__GPG@
|
2000-03-10 02:13:02 +08:00
|
|
|
%__grep @__GREP@
|
2001-02-12 06:02:29 +08:00
|
|
|
%__gzip @GZIPBIN@
|
1999-04-16 13:44:36 +08:00
|
|
|
%__id @__ID@
|
1999-11-20 02:19:41 +08:00
|
|
|
%__install @__INSTALL@
|
|
|
|
%__ln_s @LN_S@
|
1999-04-16 13:44:36 +08:00
|
|
|
%__make @__MAKE@
|
|
|
|
%__mkdir @__MKDIR@
|
1999-11-20 02:19:41 +08:00
|
|
|
%__mkdir_p @MKDIR_P@
|
1999-04-16 13:44:36 +08:00
|
|
|
%__mv @__MV@
|
|
|
|
%__patch @__PATCH@
|
2000-03-10 02:13:02 +08:00
|
|
|
%__perl @__PERL@
|
2001-02-12 06:02:29 +08:00
|
|
|
%__pgp @PGPBIN@
|
2000-12-04 08:55:17 +08:00
|
|
|
%__python @__PYTHON@
|
1999-04-16 13:44:36 +08:00
|
|
|
%__rm @__RM@
|
1999-11-20 02:19:41 +08:00
|
|
|
%__rsh @__RSH@
|
2000-03-10 02:13:02 +08:00
|
|
|
%__sed @__SED@
|
1999-11-20 02:19:41 +08:00
|
|
|
%__ssh @__SSH@
|
1999-04-16 13:44:36 +08:00
|
|
|
%__tar @__TAR@
|
2001-02-12 06:02:29 +08:00
|
|
|
%__unzip @UNZIPBIN@
|
1999-03-28 08:47:40 +08:00
|
|
|
|
1999-11-20 02:19:41 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- Build system path macros.
|
|
|
|
#
|
|
|
|
%__ar @AR@
|
2001-08-01 02:13:22 +08:00
|
|
|
%__as @AS@
|
1999-11-20 02:19:41 +08:00
|
|
|
%__cc @CC@
|
|
|
|
%__cpp @CPP@
|
2001-08-01 02:13:22 +08:00
|
|
|
%__cxx @CXX@
|
2000-01-08 01:32:27 +08:00
|
|
|
%__ld @__LD@
|
|
|
|
%__nm @__NM@
|
1999-11-20 02:19:41 +08:00
|
|
|
%__objcopy @__OBJCOPY@
|
|
|
|
%__objdump @__OBJDUMP@
|
|
|
|
%__ranlib @RANLIB@
|
1999-11-24 08:03:54 +08:00
|
|
|
%__remsh %{__rsh}
|
1999-11-20 02:19:41 +08:00
|
|
|
%__strip @__STRIP@
|
|
|
|
|
|
|
|
# XXX avoid failures if tools are not installed when rpm is built.
|
1999-03-28 08:47:40 +08:00
|
|
|
%__libtoolize libtoolize
|
|
|
|
%__aclocal aclocal
|
|
|
|
%__autoheader autoheader
|
|
|
|
%__automake automake
|
|
|
|
%__autoconf autoconf
|
1998-08-02 23:03:54 +08:00
|
|
|
|
2004-06-18 04:18:34 +08:00
|
|
|
#==============================================================================
|
|
|
|
# Conditional build stuff.
|
|
|
|
|
|
|
|
# Check if symbol is defined.
|
|
|
|
# Example usage: %if %{defined with_foo} && %{undefined with_bar} ...
|
|
|
|
%defined() %{expand:%%{?%{1}:1}%%{!?%{1}:0}}
|
|
|
|
%undefined() %{expand:%%{?%{1}:0}%%{!?%{1}:1}}
|
|
|
|
|
|
|
|
# Shorthand for %{defined with_...}
|
|
|
|
%with() %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}}
|
|
|
|
%without() %{expand:%%{?with_%{1}:0}%%{!?with_%{1}:1}}
|
|
|
|
|
|
|
|
# Handle conditional builds. %bcond_with is for case when feature is
|
|
|
|
# default off and needs to be activated with --with ... command line
|
|
|
|
# switch. %bcond_without is for the dual case.
|
|
|
|
#
|
|
|
|
# %bcond_with foo defines symbol with_foo if --with foo was specified on
|
|
|
|
# command line.
|
|
|
|
# %bcond_without foo defines symbol with_foo if --without foo was *not*
|
|
|
|
# specified on command line.
|
|
|
|
#
|
|
|
|
# For example (spec file):
|
|
|
|
#
|
|
|
|
# (at the beginning)
|
|
|
|
# %bcond_with extra_fonts
|
|
|
|
# %bcond_without static
|
|
|
|
# (and later)
|
|
|
|
# %if %{with extra_fonts}
|
|
|
|
# ...
|
|
|
|
# %else
|
|
|
|
# ...
|
|
|
|
# %endif
|
|
|
|
# %if ! %{with static}
|
|
|
|
# ...
|
|
|
|
# %endif
|
|
|
|
# %ifdef %{with static}
|
|
|
|
# ...
|
|
|
|
# %endif
|
|
|
|
# %{?with_static: ... }
|
|
|
|
# %{!?with_static: ... }
|
|
|
|
# %{?with_extra_fonts: ... }
|
|
|
|
# %{!?with_extra_fonts: ... }
|
|
|
|
|
|
|
|
#
|
|
|
|
# The bottom line: never use without_foo, _with_foo nor _without_foo, only
|
|
|
|
# with_foo. This way changing default set of bconds for given spec is just
|
|
|
|
# a matter of changing single line in it and syntax is more readable.
|
|
|
|
%bcond_with() %{expand:%%{?_with_%{1}:%%global with_%{1} 1}}
|
|
|
|
%bcond_without() %{expand:%%{!?_without_%{1}:%%global with_%{1} 1}}
|
|
|
|
#
|
1998-08-02 23:03:54 +08:00
|
|
|
#==============================================================================
|
1999-03-21 05:09:47 +08:00
|
|
|
# ---- Required rpmrc macros.
|
|
|
|
# Macros that used to be initialized as a side effect of rpmrc parsing.
|
|
|
|
# These are the default values that can be overridden by other
|
2000-01-11 23:22:35 +08:00
|
|
|
# (e.g. per-platform, per-system, per-packager, per-package) macros.
|
1998-08-02 23:03:54 +08:00
|
|
|
#
|
2001-02-12 06:02:29 +08:00
|
|
|
# The directory where sources/patches will be unpacked and built.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_builddir %{_topdir}/BUILD
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# The interpreter used for build scriptlets.
|
1999-03-21 05:09:47 +08:00
|
|
|
%_buildshell /bin/sh
|
2001-02-12 06:02:29 +08:00
|
|
|
|
2001-07-11 01:59:11 +08:00
|
|
|
# The path to the bzip2 executable (legacy, use %{__bzip2} instead).
|
2001-02-12 06:02:29 +08:00
|
|
|
%_bzip2bin %{__bzip2}
|
|
|
|
|
|
|
|
# The location of the rpm database file(s).
|
1998-08-02 23:03:54 +08:00
|
|
|
%_dbpath %{_var}/lib/rpm
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# The location of the rpm database file(s) after "rpm --rebuilddb".
|
2000-04-24 04:37:57 +08:00
|
|
|
%_dbpath_rebuild %{_dbpath}
|
2001-02-12 06:02:29 +08:00
|
|
|
|
2002-12-10 01:22:55 +08:00
|
|
|
#
|
2002-08-23 03:21:14 +08:00
|
|
|
# Path to script that creates debug symbols in a /usr/lib/debug
|
|
|
|
# shadow tree.
|
|
|
|
%__debug_install_post \
|
2002-12-14 07:34:40 +08:00
|
|
|
@RPMCONFIGDIR@/find-debuginfo.sh %{_builddir}/%{?buildsubdir}\
|
2002-08-23 03:21:14 +08:00
|
|
|
%{nil}
|
|
|
|
|
|
|
|
# Template for debug information sub-package.
|
|
|
|
%debug_package \
|
2002-12-13 03:21:50 +08:00
|
|
|
%ifnarch noarch\
|
2002-08-23 03:21:14 +08:00
|
|
|
%global __debug_package 1\
|
2002-12-13 03:21:50 +08:00
|
|
|
%package debug\
|
|
|
|
Summary: Debug information for package %{name}\
|
|
|
|
Group: Development/Debug\
|
2003-01-07 08:49:55 +08:00
|
|
|
AutoReqProv: 0\
|
2002-12-13 03:21:50 +08:00
|
|
|
%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\
|
2002-08-23 03:21:14 +08:00
|
|
|
%{nil}
|
|
|
|
|
1999-03-21 05:09:47 +08:00
|
|
|
%_defaultdocdir %{_usr}/doc
|
2001-02-12 06:02:29 +08:00
|
|
|
|
2001-07-11 01:59:11 +08:00
|
|
|
# The path to the gzip executable (legacy, use %{__gzip} instead).
|
2001-02-12 06:02:29 +08:00
|
|
|
%_gzipbin %{__gzip}
|
|
|
|
|
|
|
|
# The number of changelog entries kept when installing (legacy, unused in
|
|
|
|
# rpm-4.0.1 and later).
|
1999-03-21 05:09:47 +08:00
|
|
|
%_instchangelog 5
|
2001-02-12 06:02:29 +08:00
|
|
|
|
2001-07-11 01:59:11 +08:00
|
|
|
# The path to the pgp executable (legacy, use %{__pgp} instead).
|
2001-02-12 06:02:29 +08:00
|
|
|
%_pgpbin %{__pgp}
|
|
|
|
|
|
|
|
# The directory where newly built binary packages will be written.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_rpmdir %{_topdir}/RPMS
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# A template used to generate the output binary package file name
|
|
|
|
# (legacy).
|
|
|
|
%_rpmfilename %{_build_name_fmt}
|
|
|
|
|
|
|
|
# The default signature type.
|
2007-06-19 12:30:01 +08:00
|
|
|
%_signature gpg
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# The directory where sources/patches from a source package will be
|
|
|
|
# installed. This is also where sources/patches are found when building.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_sourcedir %{_topdir}/SOURCES
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# The directory where the spec file from a source package will be
|
|
|
|
# installed.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_specdir %{_topdir}/SPECS
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# The directory where newly built source packages will be written.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_srcrpmdir %{_topdir}/SRPMS
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# Directory where temporaray files can be created.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_tmppath %{_var}/tmp
|
2001-02-12 06:02:29 +08:00
|
|
|
|
|
|
|
# Path to top of build area.
|
1998-08-02 23:03:54 +08:00
|
|
|
%_topdir %{_usrsrc}/redhat
|
2001-02-12 06:02:29 +08:00
|
|
|
|
2001-07-11 01:59:11 +08:00
|
|
|
# The path to the unzip executable (legacy, use %{__unzip} instead).
|
2001-02-12 06:02:29 +08:00
|
|
|
%_unzipbin %{__unzip}
|
2000-01-11 23:22:35 +08:00
|
|
|
|
1999-03-21 05:09:47 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- Optional rpmrc macros.
|
1999-11-20 02:19:41 +08:00
|
|
|
# Macros that are initialized as a side effect of rpmrc and/or spec
|
|
|
|
# file parsing.
|
1999-03-21 05:09:47 +08:00
|
|
|
#
|
2000-01-11 23:22:35 +08:00
|
|
|
# Configurable build root path, same as BuildRoot: in a specfile.
|
|
|
|
# (Note: the configured macro value will override the spec file value).
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%buildroot
|
2000-01-11 23:22:35 +08:00
|
|
|
|
|
|
|
# The sub-directory (relative to %{_builddir}) where sources are compiled.
|
2000-01-13 05:48:58 +08:00
|
|
|
# This macro is set after processing %setup, either explicitly from the
|
|
|
|
# value given to -n or the default name-version.
|
2000-01-11 23:22:35 +08:00
|
|
|
#
|
1999-11-20 02:19:41 +08:00
|
|
|
#%buildsubdir
|
2000-01-11 23:22:35 +08:00
|
|
|
|
2000-06-21 05:45:50 +08:00
|
|
|
# Configurable distribution information, same as Distribution: tag in a
|
2000-01-11 23:22:35 +08:00
|
|
|
# specfile.
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%distribution
|
2000-01-11 23:22:35 +08:00
|
|
|
|
2000-06-21 05:45:50 +08:00
|
|
|
# Configurable distribution URL, same as DistURL: tag in a specfile.
|
|
|
|
# The URL will be used to supply reliable information to tools like
|
|
|
|
# rpmfind.
|
|
|
|
#
|
|
|
|
# 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
|
|
|
|
|
2000-01-11 23:22:35 +08:00
|
|
|
# Boolean (i.e. 1 == "yes", 0 == "no") that controls whether files
|
|
|
|
# marked as %doc should be installed.
|
1999-03-21 05:09:47 +08:00
|
|
|
#%_excludedocs
|
2000-01-11 23:22:35 +08:00
|
|
|
|
|
|
|
# The port and machine name of a FTP proxy host running TIS firewall.
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%_ftpport
|
|
|
|
#%_ftpproxy
|
2000-01-11 23:22:35 +08:00
|
|
|
|
|
|
|
# The signature to use and the location of configuration files for
|
|
|
|
# signing packages with GNU gpg.
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%_gpg_name
|
|
|
|
#%_gpg_path
|
2000-01-11 23:22:35 +08:00
|
|
|
|
|
|
|
# The port and machine name of an HTTP proxy host.
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%_httpport
|
|
|
|
#%_httpproxy
|
2000-01-11 23:22:35 +08:00
|
|
|
|
|
|
|
# The PATH put into the environment before running %pre/%post et al.
|
|
|
|
#
|
|
|
|
%_install_script_path /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.
|
|
|
|
#
|
2000-01-12 03:12:34 +08:00
|
|
|
%_install_langs all
|
2000-01-11 23:22:35 +08:00
|
|
|
|
2002-11-10 03:25:13 +08:00
|
|
|
# The value of CLASSPATH in build scriptlets (iff configured).
|
|
|
|
#
|
|
|
|
#%_javaclasspath all
|
|
|
|
|
|
|
|
# Import packaging conventions from jpackage.org (prefixed with _
|
|
|
|
# to avoid name collisions).
|
|
|
|
#
|
|
|
|
%_javadir %{_datadir}/java
|
|
|
|
%_javadocdir %{_datadir}/javadoc
|
|
|
|
|
2000-01-11 23:22:35 +08:00
|
|
|
#
|
|
|
|
# Deprecated.
|
2001-02-12 06:02:29 +08:00
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%_langpatt
|
2000-01-11 23:22:35 +08:00
|
|
|
|
2001-06-16 05:52:47 +08:00
|
|
|
# A colon separated list of paths where files should *not* be installed.
|
|
|
|
# Usually, these are network file system mount points.
|
|
|
|
#
|
|
|
|
#%_netsharedpath
|
|
|
|
|
2001-06-15 12:56:33 +08:00
|
|
|
# (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
|
|
|
|
|
2000-01-11 23:22:35 +08:00
|
|
|
# Configurable packager information, same as Packager: in a specfile.
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%packager
|
2000-01-11 23:22:35 +08:00
|
|
|
|
2000-06-23 09:19:45 +08:00
|
|
|
# Compression type and level for source/binary package payloads.
|
2000-01-12 00:13:16 +08:00
|
|
|
# "w9.gzdio" gzip level 9 (default).
|
2000-06-23 09:19:45 +08:00
|
|
|
# "w9.bzdio" bzip2 level 9.
|
2000-01-12 00:13:16 +08:00
|
|
|
#
|
2000-06-23 09:19:45 +08:00
|
|
|
#%_source_payload w9.gzdio
|
|
|
|
#%_binary_payload w9.gzdio
|
2000-01-12 00:13:16 +08:00
|
|
|
|
2000-01-11 23:22:35 +08:00
|
|
|
# The signature to use and the location of configuration files for
|
|
|
|
# signing packages with PGP.
|
|
|
|
#
|
1999-03-21 05:09:47 +08:00
|
|
|
#%_pgp_name
|
|
|
|
#%_pgp_path
|
2000-01-11 23:22:35 +08:00
|
|
|
|
|
|
|
# Configurable vendor information, same as Vendor: in a specfile.
|
|
|
|
#
|
1999-03-28 05:40:56 +08:00
|
|
|
#%vendor
|
1999-03-14 06:37:47 +08:00
|
|
|
|
2001-07-11 01:59:11 +08:00
|
|
|
#==============================================================================
|
2002-07-31 23:13:46 +08:00
|
|
|
# ---- Build configuration macros.
|
|
|
|
#
|
|
|
|
# Package version macro.
|
2001-07-11 01:59:11 +08:00
|
|
|
# The type of package to produce, for compatibility with legacy
|
|
|
|
# versions of rpm.
|
|
|
|
#
|
|
|
|
# This is an rpm version, e.g. 30005 means to produce packaging compatible
|
|
|
|
# with rpm-3.0.5. At the moment, values < 30005 (i.e. compatibility with
|
|
|
|
# version before rpm-3.0.5) are not supported. The only incompatible change
|
|
|
|
# in rpm packaging since rpm-3.0.5 has been to replace a 3 with a 4 in the
|
|
|
|
# rpmlead, so there's little need to use any value greater than 30005.
|
|
|
|
#
|
|
|
|
%_package_version 30005
|
|
|
|
|
2002-08-01 03:41:32 +08:00
|
|
|
#
|
2002-08-01 02:27:53 +08:00
|
|
|
# Script gets packaged file list on input and buildroot as first parameter.
|
2002-08-01 03:41:32 +08:00
|
|
|
# Returns list of unpackaged files, i.e. files in $RPM_BUILD_ROOT not packaged.
|
2002-07-31 23:13:46 +08:00
|
|
|
#
|
2002-08-01 03:41:32 +08:00
|
|
|
# Note: Disable (by commenting out) for legacy compatibility.
|
2002-08-23 03:21:14 +08:00
|
|
|
%__check_files @RPMCONFIGDIR@/check-files %{buildroot}
|
2002-08-01 02:27:53 +08:00
|
|
|
|
|
|
|
#
|
|
|
|
# Should unpackaged files in a build root terminate a build?
|
|
|
|
#
|
|
|
|
# Note: The default value should be 0 for legacy compatibility.
|
2002-08-01 03:41:32 +08:00
|
|
|
%_unpackaged_files_terminate_build 1
|
2002-08-01 02:27:53 +08:00
|
|
|
|
|
|
|
#
|
|
|
|
# Should missing %doc files in the build directory terminate a build?
|
2002-07-31 23:13:46 +08:00
|
|
|
#
|
2002-08-01 02:27:53 +08:00
|
|
|
# Note: The default value should be 0 for legacy compatibility.
|
2002-08-01 03:41:32 +08:00
|
|
|
%_missing_doc_files_terminate_build 1
|
2002-07-31 23:13:46 +08:00
|
|
|
|
2002-12-14 07:34:40 +08:00
|
|
|
#
|
2002-12-16 02:30:44 +08:00
|
|
|
# Use internal dependency generator rather than external helpers?
|
|
|
|
%_use_internal_dependency_generator 1
|
2002-12-14 07:34:40 +08:00
|
|
|
|
2003-12-12 03:09:58 +08:00
|
|
|
#
|
2003-12-26 03:02:01 +08:00
|
|
|
# Filter GLIBC_PRIVATE Provides: and Requires:
|
2003-12-12 03:09:58 +08:00
|
|
|
%_filter_GLIBC_PRIVATE 0
|
|
|
|
|
2004-05-31 01:52:57 +08:00
|
|
|
# Desired selinux policy tree
|
2004-10-10 04:22:01 +08:00
|
|
|
%__policy_tree %{expand:%%global __policy_tree %{lua:\
|
|
|
|
t="targeted"\
|
|
|
|
f = io.open("/etc/selinux/config")\
|
|
|
|
if f then\
|
|
|
|
for l in f:lines() do\
|
|
|
|
if "SELINUXTYPE=" == string.sub(l,0,12) then t=string.sub(l,13); end\
|
|
|
|
end\
|
|
|
|
f:close()\
|
|
|
|
end\
|
|
|
|
print (t)\
|
|
|
|
}}%{__policy_tree}
|
2004-05-31 01:52:57 +08:00
|
|
|
|
|
|
|
# Path to selinux file context patterns.
|
|
|
|
%__file_context_path /etc/selinux/%{__policy_tree}/contexts/files/file_contexts
|
2003-12-23 15:51:10 +08:00
|
|
|
|
|
|
|
#
|
2004-05-31 01:52:57 +08:00
|
|
|
# Path to selinux file context patterns used to add
|
2003-12-23 15:51:10 +08:00
|
|
|
# RPMTAG_FILECONTEXTS to packages when building.
|
|
|
|
#
|
|
|
|
# Undefined, missing or %{nil} will disable.
|
2004-05-31 01:52:57 +08:00
|
|
|
%_build_file_context_path %{nil}
|
2003-12-23 15:51:10 +08:00
|
|
|
|
|
|
|
#
|
2004-05-31 01:52:57 +08:00
|
|
|
# Path to selinux file context patterns used to set
|
2003-12-23 15:51:10 +08:00
|
|
|
# (or override package content) file contexts when installing.
|
|
|
|
#
|
|
|
|
# Undefined, missing or %{nil} will use package content (if available).
|
|
|
|
%_install_file_context_path %{__file_context_path}
|
|
|
|
|
|
|
|
#
|
2004-05-31 01:52:57 +08:00
|
|
|
# Path to selinux file context patterns used to verify
|
2003-12-23 15:51:10 +08:00
|
|
|
# file contexts on file system.
|
|
|
|
#
|
2003-12-26 03:02:01 +08:00
|
|
|
# Undefined, missing or %{nil} will use package content (if available).
|
2003-12-23 15:51:10 +08:00
|
|
|
%_verify_file_context_path %{__file_context_path}
|
|
|
|
|
2002-12-14 07:34:40 +08:00
|
|
|
#
|
|
|
|
# Path to scripts to autogenerate package dependencies,
|
|
|
|
#
|
|
|
|
# Note: Used iff _use_internal_dependency_generator is zero.
|
|
|
|
#%__find_provides @RPMCONFIGDIR@/rpmdeps --provides
|
|
|
|
#%__find_requires @RPMCONFIGDIR@/rpmdeps --requires
|
|
|
|
%__find_provides @RPMCONFIGDIR@/find-provides
|
|
|
|
%__find_requires @RPMCONFIGDIR@/find-requires
|
|
|
|
#%__find_conflicts ???
|
|
|
|
#%__find_obsoletes ???
|
|
|
|
|
|
|
|
#
|
|
|
|
# Path to scripts to autogenerate per-interpreter package dependencies,
|
|
|
|
#
|
|
|
|
# Note: Used iff _use_internal_dependency_generator is non-zero. The
|
2003-12-29 02:27:40 +08:00
|
|
|
# helpers are also used by @RPMCONFIGDIR@/rpmdeps {--provides|--requires}.
|
2007-05-10 20:08:38 +08:00
|
|
|
#%__perl_provides @RPMCONFIGDIR@/perldeps.pl --provides
|
|
|
|
#%__perl_requires @RPMCONFIGDIR@/perldeps.pl --requires
|
|
|
|
%__perl_provides @RPMCONFIGDIR@/perl.prov
|
|
|
|
%__perl_requires @RPMCONFIGDIR@/perl.req
|
2002-12-14 07:34:40 +08:00
|
|
|
|
2004-12-06 04:05:46 +08:00
|
|
|
%__python_provides @RPMCONFIGDIR@/pythondeps.sh --provides
|
|
|
|
%__python_requires @RPMCONFIGDIR@/pythondeps.sh --requires
|
|
|
|
|
2007-05-10 20:15:34 +08:00
|
|
|
%__mono_provides @RPMCONFIGDIR@/mono-find-provides %{_builddir}/%{?buildsubdir} %{buildroot} %{_libdir}
|
|
|
|
%__mono_requires @RPMCONFIGDIR@/mono-find-requires %{_builddir}/%{?buildsubdir} %{buildroot} %{_libdir}
|
|
|
|
|
2002-12-14 07:34:40 +08:00
|
|
|
#
|
|
|
|
# fixowner, fixgroup, and fixperms are run at the end of hardcoded setup
|
|
|
|
# These macros are necessary only for legacy compatibility, and have moved
|
|
|
|
# to per-platform macro configuration (i.e. @RPMCONFIGDIR@/<arch>-<os>/macros)
|
|
|
|
#
|
|
|
|
# Note: These are no longer enabled by default.
|
|
|
|
#%__id_u @__ID_U@
|
|
|
|
#%__chown_Rhf @__CHOWN_RHF@
|
|
|
|
#%__chgrp_Rhf @__CHGRP_RHF@
|
|
|
|
#%_fixowner [ `%{__id_u}` = '0' ] && %{__chown_Rhf} root
|
|
|
|
#%_fixgroup [ `%{__id_u}` = '0' ] && %{__chgrp_Rhf} @ROOT_GROUP@
|
|
|
|
#%_fixperms %{__chmod} -Rf @FIXPERMS@
|
|
|
|
#
|
|
|
|
|
2000-04-24 04:37:57 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- Database configuration macros.
|
|
|
|
# Macros used to configure Berkley db parameters.
|
|
|
|
#
|
2001-05-15 04:12:10 +08:00
|
|
|
# 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
|
2001-07-11 01:59:11 +08:00
|
|
|
# (e.g. %_dbi_config). The configuration is also conditioned on the
|
|
|
|
# existence of an internal %{_rpmdb_rebuild} switch to permit changing
|
2001-05-15 04:12:10 +08:00
|
|
|
# the configuration while rebuilding an rpmdb database.
|
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
#
|
|
|
|
# Here's a short list of the tokens, with a guess of whether the option is
|
|
|
|
# useful:
|
|
|
|
# (nothing) currently used in rpm, known to work.
|
|
|
|
# "+++" under development, will be supported in rpm eventually.
|
|
|
|
# "???" I have no clue, you're mostly on your own.
|
|
|
|
#
|
|
|
|
# If you do find yourself inclined to fiddle, here's what I see (shrug):
|
|
|
|
# 1) Only the value of mp_size has any serious impact on overall performance,
|
|
|
|
# and you will need ~256Kb to handle a typical machine install.
|
|
|
|
# 2) Only the Packages hash, because of the size of the values (i.e. headers),
|
|
|
|
# will ever need tuning. Diddle the pagesize if you're interested, although
|
|
|
|
# I believe that you will find pagesize=512 "best".
|
|
|
|
# 3) Adding nofsync increases speed, but risks total data loss. Fiddle shared
|
|
|
|
# and/or mp_size instead.
|
|
|
|
# 4) btree is faster than hash, but would require some painful rpm release
|
|
|
|
# engineering to convert everbody's databases to btree, not gonna happen
|
|
|
|
# soon.
|
2000-06-07 04:06:09 +08:00
|
|
|
#
|
2001-05-15 04:12:10 +08:00
|
|
|
# See the db3-devel package, or http://www.sleepycat.com for Berkeley db-3.x
|
|
|
|
# documentation.
|
2000-04-24 04:37:57 +08:00
|
|
|
#
|
2001-05-14 01:55:58 +08:00
|
|
|
# token works? Berkeley db flag or value
|
|
|
|
#==================================================
|
2001-05-15 04:12:10 +08:00
|
|
|
#---------------------- DBENV->open parameters and tunable values:
|
2002-08-27 02:56:11 +08:00
|
|
|
# mmapsize=16Mb DBENV->set_mp_mmapsize
|
|
|
|
# cachesize=1Mb DBENV->set_cachesize, DB->set_cachesize
|
2001-05-15 04:12:10 +08:00
|
|
|
#---------------------- DBENV->open and DB->open common bits:
|
2001-05-14 01:55:58 +08:00
|
|
|
# create DB_CREATE
|
2001-05-15 04:12:10 +08:00
|
|
|
# thread ??? DB_THREAD (useless w/o posix mutexes on linux)
|
|
|
|
#---------------------- DBENV->open bits:
|
2001-05-14 01:55:58 +08:00
|
|
|
# joinenv DB_JOIN_ENV
|
|
|
|
# mpool DB_INIT_MPOOL
|
2001-05-15 04:12:10 +08:00
|
|
|
# cdb +++ DB_INIT_CDB
|
2001-05-14 01:55:58 +08:00
|
|
|
# txn ??? DB_INIT_TXN
|
|
|
|
# log ??? DB_INIT_LOG
|
|
|
|
# lock ??? DB_INIT_LOCK
|
|
|
|
# recover ??? DB_RECOVER
|
|
|
|
# recover_fatal ??? DB_RECOVER_FATAL
|
2001-05-15 04:12:10 +08:00
|
|
|
# use_environ ??? DB_USE_ENVIRON
|
|
|
|
# use_environ_root ??? DB_USE_ENVIRON_ROOT
|
|
|
|
# private +++ DB_PRIVATE
|
2001-05-14 01:55:58 +08:00
|
|
|
# lockdown ??? DB_LOCKDOWN
|
2001-05-15 04:12:10 +08:00
|
|
|
# shared +++ DB_SYSTEM_MEM
|
|
|
|
#---------------------- DB->open parameters and tunable values:
|
|
|
|
# pagesize=512 +++ DB->set_pagesize
|
|
|
|
#---------------------- DB->open bits:
|
2001-05-14 01:55:58 +08:00
|
|
|
# excl ??? DB_EXCL
|
|
|
|
# nommap ??? DB_NOMMAP
|
|
|
|
# rdonly DB_RDONLY
|
|
|
|
#---------------------- DB->open types:
|
2001-06-16 05:52:47 +08:00
|
|
|
# btree DB_BTREE
|
2000-04-24 04:37:57 +08:00
|
|
|
# hash DB_HASH
|
2001-05-14 01:55:58 +08:00
|
|
|
# recno ??? DB_RECNO
|
|
|
|
# queue ??? DB_QUEUE
|
2001-05-15 04:12:10 +08:00
|
|
|
# unknown +++ DB_UNKNOWN
|
|
|
|
#---------------------- DB->set_flags bits:
|
|
|
|
# bt_dup +++ (btree only) DB_DUP
|
|
|
|
# bt_dupsort +++ (btree only) DB_DUPSORT
|
|
|
|
# ht_dup +++ (hash only) DB_DUP
|
|
|
|
# ht_dupsort +++ (hash only) DB_DUPSORT
|
|
|
|
#----------------------- rpmdb specific configuration:
|
2001-07-11 01:59:11 +08:00
|
|
|
# usedbenv (always on) Use db3 environment?
|
2002-07-25 00:21:23 +08:00
|
|
|
# verify (db3 only) Verify Packages db after RW close?
|
2001-05-15 04:12:10 +08:00
|
|
|
# lockdbfd (always on for Packages) Use fcntl(2) locking ?
|
2001-05-26 03:51:53 +08:00
|
|
|
# nofsync Disable fsync(2) call performed after db3 writes?
|
2001-05-15 04:12:10 +08:00
|
|
|
# temporary Unlink file when closing.
|
|
|
|
#
|
2000-03-31 03:22:46 +08:00
|
|
|
|
2001-05-14 01:55:58 +08:00
|
|
|
# XXX Use transactions and logs for rpmdb durability (no clue yet):
|
2002-07-31 21:11:25 +08:00
|
|
|
#%__dbi_other create joinenv mpool txn log \
|
2002-07-25 00:21:23 +08:00
|
|
|
# mp_mmapsize=8Mb mp_size=512Kb
|
2001-05-14 01:55:58 +08:00
|
|
|
|
2002-07-31 21:11:25 +08:00
|
|
|
# Use a CDB database model for concurrent access.
|
2002-12-18 03:22:15 +08:00
|
|
|
# XXX Add "private" here for legacy interoperation transiting to glibc+nptl.
|
|
|
|
%__dbi_cdb create cdb mpool mp_mmapsize=16Mb mp_size=1Mb
|
2001-07-15 04:09:56 +08:00
|
|
|
|
2002-05-03 07:34:20 +08:00
|
|
|
%__dbi_other %{?_tmppath:tmpdir=%{_tmppath}} %{?__dbi_cdb}
|
2001-05-10 06:58:56 +08:00
|
|
|
|
2001-05-14 01:55:58 +08:00
|
|
|
# Note: adding nofsync here speeds up --rebuilddb a lot.
|
2001-05-10 06:58:56 +08:00
|
|
|
%__dbi_rebuild nofsync !log !txn !cdb
|
2001-09-16 05:21:31 +08:00
|
|
|
%__dbi_transient %{__dbi_rebuild} temporary private
|
2001-05-10 06:58:56 +08:00
|
|
|
%__dbi_perms perms=0644
|
|
|
|
|
2001-05-14 01:55:58 +08:00
|
|
|
#
|
|
|
|
#--- Hash database configuration
|
2001-05-10 06:58:56 +08:00
|
|
|
%__dbi_htconfig \
|
|
|
|
hash \
|
2000-04-24 04:37:57 +08:00
|
|
|
%{__dbi_other}\
|
2000-05-02 01:50:35 +08:00
|
|
|
%{__dbi_perms}\
|
2000-04-24 04:37:57 +08:00
|
|
|
%{nil}
|
2000-04-21 08:21:15 +08:00
|
|
|
|
2001-05-14 01:55:58 +08:00
|
|
|
%__dbi_htconfig_current %{__dbi_htconfig}
|
|
|
|
%__dbi_htconfig_rebuild %{__dbi_htconfig} %{__dbi_rebuild}
|
|
|
|
|
|
|
|
%_dbi_htconfig \
|
|
|
|
%{?_rpmdb_rebuild:%{__dbi_htconfig_rebuild}}\
|
|
|
|
%{!?_rpmdb_rebuild:%{__dbi_htconfig_current}}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#
|
|
|
|
#--- Btree database configuration
|
2001-05-10 06:58:56 +08:00
|
|
|
%__dbi_btconfig \
|
2001-06-07 03:57:12 +08:00
|
|
|
btree \
|
2001-05-10 06:58:56 +08:00
|
|
|
%{__dbi_other}\
|
|
|
|
%{__dbi_perms}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
%__dbi_btconfig_current %{__dbi_btconfig}
|
|
|
|
%__dbi_btconfig_rebuild %{__dbi_btconfig} %{__dbi_rebuild}
|
|
|
|
|
|
|
|
%_dbi_btconfig \
|
|
|
|
%{?_rpmdb_rebuild:%{__dbi_btconfig_rebuild}}\
|
|
|
|
%{!?_rpmdb_rebuild:%{__dbi_btconfig_current}}\
|
|
|
|
%{nil}
|
|
|
|
|
2000-05-02 01:50:35 +08:00
|
|
|
# The list of tags for which indices will be built.
|
2002-03-07 07:17:31 +08:00
|
|
|
%_dbi_tags Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Depends:Pubkeys
|
2000-03-31 03:22:46 +08:00
|
|
|
|
2001-05-14 01:55:58 +08:00
|
|
|
# "Packages" should have shared/exclusive fcntl(2) lock using "lockdbfd".
|
2002-12-18 03:22:15 +08:00
|
|
|
%_dbi_config_Packages %{_dbi_htconfig} lockdbfd
|
2000-05-02 16:30:31 +08:00
|
|
|
|
2000-05-02 01:50:35 +08:00
|
|
|
# "Depends" is a per-transaction cache of known dependency resolutions.
|
2002-01-08 02:36:23 +08:00
|
|
|
%_dbi_config_Depends %{_dbi_htconfig} temporary private
|
2000-05-02 01:50:35 +08:00
|
|
|
|
2001-05-10 06:58:56 +08:00
|
|
|
%_dbi_config_Dirnames %{_dbi_btconfig}
|
|
|
|
%_dbi_config_Requireversion %{_dbi_btconfig}
|
|
|
|
%_dbi_config_Provideversion %{_dbi_btconfig}
|
|
|
|
%_dbi_config_Installtid %{_dbi_btconfig}
|
|
|
|
%_dbi_config_Removetid %{_dbi_btconfig}
|
2001-03-04 23:34:53 +08:00
|
|
|
|
2003-12-23 15:51:10 +08:00
|
|
|
%_dbi_config %{_dbi_htconfig}
|
|
|
|
|
2001-05-15 04:12:10 +08:00
|
|
|
# XXX legacy configuration.
|
|
|
|
# Choose db interface:
|
|
|
|
# 3 native db3 interface.
|
|
|
|
#
|
|
|
|
# There are two macros so that --rebuilddb can convert db1 -> db3.
|
|
|
|
#
|
|
|
|
%_dbapi 3
|
|
|
|
%_dbapi_rebuild 3
|
|
|
|
|
2001-02-12 06:02:29 +08:00
|
|
|
#==============================================================================
|
2002-01-11 03:16:54 +08:00
|
|
|
# ---- 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} \
|
2002-07-01 06:47:32 +08:00
|
|
|
gpg --batch --no-verbose --no-armor --passphrase-fd 3 --no-secmem-warning \
|
2002-01-11 03:16:54 +08:00
|
|
|
-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}
|
|
|
|
|
|
|
|
# XXX rpm-4.1 verifies signatures using beecrypt.
|
|
|
|
#%__gpg_verify_cmd %{__gpg} \
|
2002-07-01 06:47:32 +08:00
|
|
|
# gpg --batch --no-verbose --verify --no-secmem-warning \
|
2002-01-11 03:16:54 +08:00
|
|
|
# %{__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}
|
|
|
|
|
2002-06-20 10:19:21 +08:00
|
|
|
#
|
|
|
|
# XXX rpm-4.1 verifies prelinked libraries using a prelink undo helper.
|
2002-06-22 02:00:50 +08:00
|
|
|
# Normally this macro is defined in /etc/rpm/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.
|
|
|
|
#
|
2002-06-20 10:19:21 +08:00
|
|
|
# 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.
|
2002-06-22 02:00:50 +08:00
|
|
|
#%__prelink_undo_cmd /usr/sbin/prelink prelink -y library
|
2002-06-20 10:19:21 +08:00
|
|
|
|
2004-11-29 05:14:41 +08:00
|
|
|
# Horowitz Key Protocol server configuration
|
|
|
|
#
|
2007-02-22 19:57:46 +08:00
|
|
|
#_hkp_keyserver hkp://pgp.mit.edu
|
|
|
|
#_hkp_keyserver_query %{_hkp_keyserver}/pks/lookup?op=get&search=0x
|
2004-11-29 05:14:41 +08:00
|
|
|
|
2002-01-11 03:16:54 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- Transaction macros.
|
2001-05-10 06:58:56 +08:00
|
|
|
# Macro(s) used to parameterize transactions.
|
2001-02-12 06:02:29 +08:00
|
|
|
#
|
|
|
|
# The output binary package file name template used when building
|
|
|
|
# binary packages.
|
2002-01-31 06:19:56 +08:00
|
|
|
#
|
|
|
|
# XXX Note: escaped %% for use in headerSprintf()
|
2001-02-12 06:02:29 +08:00
|
|
|
%_build_name_fmt %%{ARCH}/%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
|
|
|
|
|
2003-01-02 04:33:21 +08:00
|
|
|
# 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
|
|
|
|
%_transaction_color @RPMCANONCOLOR@
|
|
|
|
|
2003-07-03 03:26:04 +08:00
|
|
|
# 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 @autorelocate_path@
|
|
|
|
|
2004-10-10 04:22:01 +08:00
|
|
|
# A default directory color to choose when directories are
|
|
|
|
# auto-relocated.
|
|
|
|
%_autorelocate_dcolor @autorelocate_dcolor@
|
|
|
|
|
2002-06-28 00:37:15 +08:00
|
|
|
# The path to the dependency universe database. The default value
|
2002-07-19 05:42:18 +08:00
|
|
|
# is the rpmdb-redhat location. The macro is usually defined in
|
|
|
|
# /etc/rpm/macros.solve, installed with the rpmdb-redhat package.
|
|
|
|
#%_solve_dbpath /usr/lib/rpmdb/%{_arch}-%{_vendor}-%{_os}/redhat
|
2002-06-28 00:37:15 +08:00
|
|
|
|
2002-08-14 00:36:44 +08:00
|
|
|
# The path to the dependency universe packages. This should
|
|
|
|
# be a path to the packages contained in the solve database.
|
|
|
|
#%_solve_pkgsdir /mnt/redhat/test/latest-i386/RedHat/RPMS/
|
|
|
|
|
2002-04-13 09:28:20 +08:00
|
|
|
# The output binary package file name template used when suggesting
|
2002-07-19 05:42:18 +08:00
|
|
|
# binary packages that solve a dependency. The macro is usually defined
|
|
|
|
# in /etc/rpm/macros.solve, installed with the rpmdb-redhat package.
|
2002-04-13 09:28:20 +08:00
|
|
|
#
|
|
|
|
# XXX Note: escaped %% for use in headerSprintf()
|
2002-08-14 00:36:44 +08:00
|
|
|
#%_solve_name_fmt %{?_solve_pkgsdir}%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
|
2002-04-13 09:28:20 +08:00
|
|
|
|
2001-02-12 06:02:29 +08:00
|
|
|
# The output binary package file name template used when repackaging
|
|
|
|
# erased packages.
|
2002-01-31 06:19:56 +08:00
|
|
|
#
|
|
|
|
# XXX Note: escaped %% for use in headerSprintf()
|
2001-02-12 06:02:29 +08:00
|
|
|
%_repackage_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
|
|
|
|
|
|
|
|
# The directory in which erased packages will be saved when using
|
|
|
|
# the --repackage option.
|
2002-08-14 04:40:32 +08:00
|
|
|
%_repackage_dir /var/spool/repackage
|
2002-07-05 05:08:05 +08:00
|
|
|
|
|
|
|
# A path (i.e. URL) prefix that is pre-pended to %{_repackage_dir}.
|
2001-02-12 06:02:29 +08:00
|
|
|
%_repackage_root %{nil}
|
|
|
|
|
2002-09-01 06:39:34 +08:00
|
|
|
# If non-zero, all erasures will be automagically repackaged.
|
|
|
|
%_repackage_all_erasures 0
|
|
|
|
|
2004-03-05 10:21:48 +08:00
|
|
|
# If non-zero, a failed transaction will be automagically rolled
|
|
|
|
# back (sans, the failing transaction element).
|
|
|
|
%_rollback_transaction_on_failure 0
|
|
|
|
|
2002-07-25 00:21:23 +08:00
|
|
|
# Verify digest/signature flags for various rpm modes:
|
2005-07-21 09:45:44 +08:00
|
|
|
# 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.
|
|
|
|
#
|
|
|
|
# You also can do:
|
|
|
|
# >>> hex(rpm._RPMVSF_NOSIGNATURES)
|
|
|
|
# '0xc0c00'
|
|
|
|
# or:
|
|
|
|
# >>> hex(rpm._RPMVSF_NOSIGNATURES|rpm._RPMVSF_NOPAYLOAD)
|
|
|
|
# '0xf0c00'
|
|
|
|
# at the python prompt for example, after "import rpm".
|
2002-07-25 00:21:23 +08:00
|
|
|
#
|
2002-08-06 09:41:44 +08:00
|
|
|
# The checking overhead is ~11ms per header for digests/signatures;
|
|
|
|
# each header from the database is checked only when first encountered
|
|
|
|
# for each database open.
|
2002-07-25 00:21:23 +08:00
|
|
|
#
|
|
|
|
# Note: the %_vsflags_erase applies to --upgrade/--freshen modes as
|
|
|
|
# well as --erase.
|
|
|
|
#
|
2004-10-15 08:14:29 +08:00
|
|
|
%__vsflags 0xf0000
|
2002-08-14 00:36:44 +08:00
|
|
|
%_vsflags_build %{__vsflags}
|
|
|
|
%_vsflags_erase %{__vsflags}
|
|
|
|
%_vsflags_install %{__vsflags}
|
|
|
|
%_vsflags_query %{__vsflags}
|
|
|
|
%_vsflags_rebuilddb %{__vsflags}
|
|
|
|
%_vsflags_verify %{__vsflags}
|
2002-07-25 00:21:23 +08:00
|
|
|
|
2002-01-31 06:19:56 +08:00
|
|
|
# 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).
|
|
|
|
#
|
2004-10-20 10:34:17 +08:00
|
|
|
|
2002-01-31 06:19:56 +08:00
|
|
|
%_dependency_whiteout \
|
|
|
|
%{nil}
|
|
|
|
|
2003-02-01 06:55:28 +08:00
|
|
|
#
|
|
|
|
# Default headerSprintf() output format string for rpm -qa
|
|
|
|
#
|
|
|
|
# XXX Note: escaped %% for use in headerSprintf()
|
|
|
|
%_query_all_fmt %%{name}-%%{version}-%%{release}
|
2002-07-02 21:16:50 +08:00
|
|
|
|
2005-01-26 12:05:34 +08:00
|
|
|
#
|
|
|
|
# Default path to the file used for transaction fcmtl lock.
|
|
|
|
#
|
|
|
|
# The previous, FHS clompliant, name was /var/lock/run/transaction,
|
|
|
|
# but the transaction lock needs to be per-database, not global, for
|
|
|
|
# some rpmdb operations.
|
|
|
|
#
|
|
|
|
# XXX Note: the file name is chosesn as __db.000 to expedite
|
|
|
|
# support issues, many users are doing "rm -f /var/lib/rpm/__db*"
|
|
|
|
# these days.
|
|
|
|
%_rpmlock_path %{_dbpath}/__db.000
|
|
|
|
|
2002-07-02 21:16:50 +08:00
|
|
|
#==============================================================================
|
|
|
|
# ---- Cache configuration macros.
|
|
|
|
# Macro(s) used to configure the universe of headers used to
|
|
|
|
# solve dependencies using rpmcache(8).
|
|
|
|
#
|
|
|
|
# Note: These values are specific to my machine, and most certainly
|
|
|
|
# are incorrect for any non-redhat.com 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
|
|
|
|
%_bhA RPMS
|
|
|
|
|
2002-07-05 05:08:05 +08:00
|
|
|
# The cache database directory.
|
|
|
|
%_cache_dbpath /var/spool/up2date/cache
|
|
|
|
|
1999-03-14 06:37:47 +08:00
|
|
|
#==============================================================================
|
1999-03-14 08:34:52 +08:00
|
|
|
# ---- 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..
|
|
|
|
#
|
1999-03-14 06:37:47 +08:00
|
|
|
%_arch @RPMCANONARCH@
|
2001-08-01 02:13:22 +08:00
|
|
|
%_build_arch @RPMCANONARCH@
|
1999-03-28 05:40:56 +08:00
|
|
|
%_vendor @RPMCANONVENDOR@
|
1999-03-14 06:37:47 +08:00
|
|
|
%_os @RPMCANONOS@
|
2001-06-21 11:51:34 +08:00
|
|
|
%_gnu -gnu
|
|
|
|
%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}%{?_gnu}
|
2000-09-02 05:15:40 +08:00
|
|
|
|
1999-01-16 00:31:14 +08:00
|
|
|
#
|
2000-09-02 05:15:40 +08:00
|
|
|
# Define a generic value for optflags. Normally overridden by per-target macros.
|
|
|
|
%optflags -O2
|
1998-08-02 23:03:54 +08:00
|
|
|
|
2000-09-02 05:15:40 +08:00
|
|
|
#
|
|
|
|
# Define per-arch and per-os defaults. Normally overridden by per-target macros.
|
Hi!
I'd like to start building sparc64 packages (eventhough the install rule
details are yet to be designed - IMHO if 64bit SPARC userland is going into
7.0 we should rebuild all packages into 64bit in the next months or so to
have time to chase bugs etc.), and this is about what I need.
Basically I'd like to have %{_lib} to stand for the last part (normally
"lib") of dirname for directories like /lib, /usr/lib, /usr/X11R6/lib
because on sparc64-linux they are /lib64, /usr/lib64, /usr/X11R6/lib64 (and
on Solaris /lib/sparcv9, /usr/lib/sparcv9 etc.), so that one can use things
like
/usr/%{_lib} in the spec files.
Another thing which I need is an arch specific build root policy.
This patch does a few things:
1) add installplatform into EXTRA_DIST files, so that it is actually invoked
during rpm build not from CVS
2) Define %_lib lib and let target specific macros override it
3) Split __spec_install_post into __arch_install_post and __os_install_post,
--buildpolicy now specifies the __os_install_post part only. spec files
can still override the __arch_install_post if the want to.
brp-sparc64-linux is used to move 64bit libraries to */lib64 directories
from */lib directories if make install of some package left them there.
4) Change installplatform so that on sparc* it creates both sparc and
sparc64 target macro dirs (/usr/lib/rpm/sparc{,64}-redhat-linux in
sparc*-redhat-linux case).
CVS patchset: 3685
CVS date: 2000/04/19 16:03:49
2000-04-20 00:03:49 +08:00
|
|
|
%__arch_install_post %{nil}
|
|
|
|
%__os_install_post %{___build_post}
|
|
|
|
|
1998-09-06 07:13:35 +08:00
|
|
|
#==============================================================================
|
1999-11-20 02:19:41 +08:00
|
|
|
# ---- Scriptlet template templates.
|
2000-01-11 23:22:35 +08:00
|
|
|
# Global defaults used for building scriptlet templates.
|
1998-09-06 07:13:35 +08:00
|
|
|
#
|
1999-11-20 02:19:41 +08:00
|
|
|
|
|
|
|
%___build_shell %{?_buildshell:%{_buildshell}}%{!?_buildshell:/bin/sh}
|
|
|
|
%___build_args -e
|
1999-11-24 08:03:54 +08:00
|
|
|
%___build_cmd %{?_sudo:%{_sudo} }%{?_remsh:%{_remsh} %{_remhost} }%{?_remsudo:%{_remsudo} }%{?_remchroot:%{_remchroot} %{_remroot} }%{___build_shell} %{___build_args}
|
1999-11-20 02:19:41 +08:00
|
|
|
%___build_pre \
|
2001-09-15 21:49:11 +08:00
|
|
|
RPM_SOURCE_DIR=\"%{u2p:%{_sourcedir}}\"\
|
|
|
|
RPM_BUILD_DIR=\"%{u2p:%{_builddir}}\"\
|
|
|
|
RPM_OPT_FLAGS=\"%{optflags}\"\
|
|
|
|
RPM_ARCH=\"%{_arch}\"\
|
|
|
|
RPM_OS=\"%{_os}\"\
|
|
|
|
export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS\
|
|
|
|
RPM_DOC_DIR=\"%{_docdir}\"\
|
|
|
|
export RPM_DOC_DIR\
|
|
|
|
RPM_PACKAGE_NAME=\"%{name}\"\
|
|
|
|
RPM_PACKAGE_VERSION=\"%{version}\"\
|
|
|
|
RPM_PACKAGE_RELEASE=\"%{release}\"\
|
|
|
|
export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE\
|
|
|
|
%{?buildroot:RPM_BUILD_ROOT=\"%{u2p:%{buildroot}}\"\
|
|
|
|
export RPM_BUILD_ROOT}\
|
2002-11-10 03:25:13 +08:00
|
|
|
%{?_javaclasspath:CLASSPATH=\"%{_javaclasspath}\"\
|
|
|
|
export CLASSPATH}\
|
2001-09-15 21:49:11 +08:00
|
|
|
\
|
|
|
|
%{verbose:set -x}%{!verbose:exec > /dev/null}\
|
|
|
|
umask 022\
|
|
|
|
cd %{u2p:%{_builddir}}\
|
1999-11-20 02:19:41 +08:00
|
|
|
|
|
|
|
|
|
|
|
#%___build_body %{nil}
|
|
|
|
%___build_post exit 0
|
|
|
|
|
|
|
|
%___build_template #!%{___build_shell}\
|
|
|
|
%{___build_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{___build_body}\
|
|
|
|
#%{___build_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
#==============================================================================
|
|
|
|
# ---- Scriptlet templates.
|
|
|
|
# Macro(s) that expand to a command and script that is executed.
|
|
|
|
# CAVEAT: All macro expansions must fit in a BUFSIZ (8192 byte) buffer.
|
|
|
|
#
|
|
|
|
%__spec_prep_shell %{___build_shell}
|
|
|
|
%__spec_prep_args %{___build_args}
|
|
|
|
%__spec_prep_cmd %{___build_cmd}
|
|
|
|
%__spec_prep_pre %{___build_pre}
|
|
|
|
%__spec_prep_body %{___build_body}
|
|
|
|
%__spec_prep_post %{___build_post}
|
|
|
|
%__spec_prep_template #!%{__spec_prep_shell}\
|
|
|
|
%{__spec_prep_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{__spec_prep_body}\
|
|
|
|
#%{__spec_prep_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
%__spec_build_shell %{___build_shell}
|
|
|
|
%__spec_build_args %{___build_args}
|
|
|
|
%__spec_build_cmd %{___build_cmd}
|
|
|
|
%__spec_build_pre %{___build_pre}
|
|
|
|
%__spec_build_body %{___build_body}
|
|
|
|
%__spec_build_post %{___build_post}
|
|
|
|
%__spec_build_template #!%{__spec_build_shell}\
|
|
|
|
%{__spec_build_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{__spec_build_body}\
|
|
|
|
#%{__spec_build_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
%__spec_install_shell %{___build_shell}
|
|
|
|
%__spec_install_args %{___build_args}
|
|
|
|
%__spec_install_cmd %{___build_cmd}
|
|
|
|
%__spec_install_pre %{___build_pre}
|
|
|
|
%__spec_install_body %{___build_body}
|
Hi!
I'd like to start building sparc64 packages (eventhough the install rule
details are yet to be designed - IMHO if 64bit SPARC userland is going into
7.0 we should rebuild all packages into 64bit in the next months or so to
have time to chase bugs etc.), and this is about what I need.
Basically I'd like to have %{_lib} to stand for the last part (normally
"lib") of dirname for directories like /lib, /usr/lib, /usr/X11R6/lib
because on sparc64-linux they are /lib64, /usr/lib64, /usr/X11R6/lib64 (and
on Solaris /lib/sparcv9, /usr/lib/sparcv9 etc.), so that one can use things
like
/usr/%{_lib} in the spec files.
Another thing which I need is an arch specific build root policy.
This patch does a few things:
1) add installplatform into EXTRA_DIST files, so that it is actually invoked
during rpm build not from CVS
2) Define %_lib lib and let target specific macros override it
3) Split __spec_install_post into __arch_install_post and __os_install_post,
--buildpolicy now specifies the __os_install_post part only. spec files
can still override the __arch_install_post if the want to.
brp-sparc64-linux is used to move 64bit libraries to */lib64 directories
from */lib directories if make install of some package left them there.
4) Change installplatform so that on sparc* it creates both sparc and
sparc64 target macro dirs (/usr/lib/rpm/sparc{,64}-redhat-linux in
sparc*-redhat-linux case).
CVS patchset: 3685
CVS date: 2000/04/19 16:03:49
2000-04-20 00:03:49 +08:00
|
|
|
%__spec_install_post\
|
2002-08-23 03:21:14 +08:00
|
|
|
%{?__debug_package:%{__debug_install_post}}\
|
Hi!
I'd like to start building sparc64 packages (eventhough the install rule
details are yet to be designed - IMHO if 64bit SPARC userland is going into
7.0 we should rebuild all packages into 64bit in the next months or so to
have time to chase bugs etc.), and this is about what I need.
Basically I'd like to have %{_lib} to stand for the last part (normally
"lib") of dirname for directories like /lib, /usr/lib, /usr/X11R6/lib
because on sparc64-linux they are /lib64, /usr/lib64, /usr/X11R6/lib64 (and
on Solaris /lib/sparcv9, /usr/lib/sparcv9 etc.), so that one can use things
like
/usr/%{_lib} in the spec files.
Another thing which I need is an arch specific build root policy.
This patch does a few things:
1) add installplatform into EXTRA_DIST files, so that it is actually invoked
during rpm build not from CVS
2) Define %_lib lib and let target specific macros override it
3) Split __spec_install_post into __arch_install_post and __os_install_post,
--buildpolicy now specifies the __os_install_post part only. spec files
can still override the __arch_install_post if the want to.
brp-sparc64-linux is used to move 64bit libraries to */lib64 directories
from */lib directories if make install of some package left them there.
4) Change installplatform so that on sparc* it creates both sparc and
sparc64 target macro dirs (/usr/lib/rpm/sparc{,64}-redhat-linux in
sparc*-redhat-linux case).
CVS patchset: 3685
CVS date: 2000/04/19 16:03:49
2000-04-20 00:03:49 +08:00
|
|
|
%{__arch_install_post}\
|
|
|
|
%{__os_install_post}\
|
|
|
|
%{nil}
|
1999-11-20 02:19:41 +08:00
|
|
|
%__spec_install_template #!%{__spec_install_shell}\
|
|
|
|
%{__spec_install_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{__spec_install_body}\
|
|
|
|
#%{__spec_install_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
2002-12-22 04:37:37 +08:00
|
|
|
%__spec_check_shell %{___build_shell}
|
|
|
|
%__spec_check_args %{___build_args}
|
|
|
|
%__spec_check_cmd %{___build_cmd}
|
|
|
|
%__spec_check_pre %{___build_pre}
|
|
|
|
%__spec_check_body %{___build_body}
|
|
|
|
%__spec_check_post %{___build_post}
|
|
|
|
%__spec_check_template #!%{__spec_check_shell}\
|
|
|
|
%{__spec_check_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{__spec_check_body}\
|
|
|
|
#%{__spec_check_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
1999-11-20 02:19:41 +08:00
|
|
|
#%__spec_autodep_shell %{___build_shell}
|
|
|
|
#%__spec_autodep_args %{___build_args}
|
|
|
|
#%__spec_autodep_cmd %{___build_cmd}
|
|
|
|
#%__spec_autodep_pre %{___build_pre}
|
|
|
|
#%__spec_autodep_body %{___build_body}
|
|
|
|
#%__spec_autodep_post %{___build_post}
|
|
|
|
#%__spec_autodep_template #!%{__spec_autodep_shell}\
|
|
|
|
#%{__spec_autodep_pre}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
#%{__spec_autodep_body}\
|
|
|
|
#%{__spec_autodep_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
%__spec_clean_shell %{___build_shell}
|
|
|
|
%__spec_clean_args %{___build_args}
|
|
|
|
%__spec_clean_cmd %{___build_cmd}
|
|
|
|
%__spec_clean_pre %{___build_pre}
|
|
|
|
%__spec_clean_body %{___build_body}
|
|
|
|
%__spec_clean_post %{___build_post}
|
|
|
|
%__spec_clean_template #!%{__spec_clean_shell}\
|
|
|
|
%{__spec_clean_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{__spec_clean_body}\
|
|
|
|
#%{__spec_clean_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
%__spec_rmbuild_shell %{___build_shell}
|
|
|
|
%__spec_rmbuild_args %{___build_args}
|
|
|
|
%__spec_rmbuild_cmd %{___build_cmd}
|
|
|
|
%__spec_rmbuild_pre %{___build_pre}
|
|
|
|
%__spec_rmbuild_body %{___build_body}
|
|
|
|
%__spec_rmbuild_post %{___build_post}
|
|
|
|
%__spec_rmbuild_template #!%{__spec_rmbuild_shell}\
|
|
|
|
%{__spec_rmbuild_pre}\
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
#%{__spec_rmbuild_body}\
|
|
|
|
#%{__spec_rmbuild_post}\
|
|
|
|
#%{nil}
|
|
|
|
|
|
|
|
# XXX We don't expand pre/post install scriptlets (yet).
|
|
|
|
#%__spec_pre_pre %{nil}
|
|
|
|
#%__spec_pre_post %{nil}
|
|
|
|
#%__spec_post_pre %{nil}
|
|
|
|
#%__spec_post_post %{nil}
|
|
|
|
#%__spec_preun_pre %{nil}
|
|
|
|
#%__spec_preun_post %{nil}
|
|
|
|
#%__spec_postun_pre %{nil}
|
|
|
|
#%__spec_postun_post %{nil}
|
|
|
|
#%__spec_triggerpostun_pre %{nil}
|
|
|
|
#%__spec_triggerpostun_post %{nil}
|
|
|
|
#%__spec_triggerun_pre %{nil}
|
|
|
|
#%__spec_triggerun_post %{nil}
|
|
|
|
#%__spec_triggerin_pre %{nil}
|
|
|
|
#%__spec_triggerin_post %{nil}
|
1998-09-06 07:13:35 +08:00
|
|
|
|
|
|
|
#==============================================================================
|
1998-10-20 19:54:13 +08:00
|
|
|
# ---- configure macros.
|
2000-01-11 23:22:35 +08:00
|
|
|
# Macro(s) slavishly copied from autoconf's config.status.
|
1998-10-20 19:54:13 +08:00
|
|
|
#
|
1998-12-02 07:28:26 +08:00
|
|
|
%_prefix @prefix@
|
1999-04-21 02:21:08 +08:00
|
|
|
%_exec_prefix %{_prefix}
|
|
|
|
%_bindir %{_exec_prefix}/bin
|
|
|
|
%_sbindir %{_exec_prefix}/sbin
|
|
|
|
%_libexecdir %{_exec_prefix}/libexec
|
|
|
|
%_datadir %{_prefix}/share
|
|
|
|
%_sysconfdir %{_prefix}/etc
|
|
|
|
%_sharedstatedir %{_prefix}/com
|
|
|
|
%_localstatedir %{_prefix}/var
|
Hi!
I'd like to start building sparc64 packages (eventhough the install rule
details are yet to be designed - IMHO if 64bit SPARC userland is going into
7.0 we should rebuild all packages into 64bit in the next months or so to
have time to chase bugs etc.), and this is about what I need.
Basically I'd like to have %{_lib} to stand for the last part (normally
"lib") of dirname for directories like /lib, /usr/lib, /usr/X11R6/lib
because on sparc64-linux they are /lib64, /usr/lib64, /usr/X11R6/lib64 (and
on Solaris /lib/sparcv9, /usr/lib/sparcv9 etc.), so that one can use things
like
/usr/%{_lib} in the spec files.
Another thing which I need is an arch specific build root policy.
This patch does a few things:
1) add installplatform into EXTRA_DIST files, so that it is actually invoked
during rpm build not from CVS
2) Define %_lib lib and let target specific macros override it
3) Split __spec_install_post into __arch_install_post and __os_install_post,
--buildpolicy now specifies the __os_install_post part only. spec files
can still override the __arch_install_post if the want to.
brp-sparc64-linux is used to move 64bit libraries to */lib64 directories
from */lib directories if make install of some package left them there.
4) Change installplatform so that on sparc* it creates both sparc and
sparc64 target macro dirs (/usr/lib/rpm/sparc{,64}-redhat-linux in
sparc*-redhat-linux case).
CVS patchset: 3685
CVS date: 2000/04/19 16:03:49
2000-04-20 00:03:49 +08:00
|
|
|
%_lib lib
|
|
|
|
%_libdir %{_exec_prefix}/%{_lib}
|
1999-04-21 02:21:08 +08:00
|
|
|
%_includedir %{_prefix}/include
|
|
|
|
%_oldincludedir /usr/include
|
1999-08-19 00:29:53 +08:00
|
|
|
%_infodir %{_prefix}/info
|
1999-04-21 02:21:08 +08:00
|
|
|
%_mandir %{_prefix}/man
|
|
|
|
|
|
|
|
#==============================================================================
|
|
|
|
# ---- config.guess platform macros.
|
|
|
|
# Macro(s) similar to the tokens used by configure.
|
|
|
|
#
|
1998-12-03 05:10:18 +08:00
|
|
|
%_build %{_host}
|
|
|
|
%_build_alias %{_host_alias}
|
|
|
|
%_build_cpu %{_host_cpu}
|
|
|
|
%_build_vendor %{_host_vendor}
|
|
|
|
%_build_os %{_host_os}
|
1998-10-20 19:54:13 +08:00
|
|
|
%_host @host@
|
2002-02-11 05:13:52 +08:00
|
|
|
%_host_alias @host_alias@%{nil}
|
1998-10-20 19:54:13 +08:00
|
|
|
%_host_cpu @host_cpu@
|
|
|
|
%_host_vendor @host_vendor@
|
|
|
|
%_host_os @host_os@
|
1998-12-03 05:10:18 +08:00
|
|
|
%_target %{_host}
|
1999-03-12 13:57:01 +08:00
|
|
|
%_target_alias %{_host_alias}
|
|
|
|
%_target_cpu %{_host_cpu}
|
|
|
|
%_target_vendor %{_host_vendor}
|
|
|
|
%_target_os %{_host_os}
|
1999-01-20 01:23:32 +08:00
|
|
|
|
|
|
|
#==============================================================================
|
|
|
|
# ---- specfile macros.
|
|
|
|
# Macro(s) here can be used reliably for reproducible builds.
|
|
|
|
# (Note: Above is the goal, below are the macros under development)
|
|
|
|
#
|
|
|
|
# The configure macro does the following:
|
1999-03-14 06:37:47 +08:00
|
|
|
# optionally change to a subdirectory (not implemented).
|
|
|
|
# attempt to update config.guess and config.sub.
|
1999-01-20 01:23:32 +08:00
|
|
|
# run configure with correct prefix, platform, and CFLAGS.
|
1999-03-14 06:37:47 +08:00
|
|
|
# optionally restore current directory (not implemented).
|
1999-01-22 01:18:38 +08:00
|
|
|
# The configure macro should be invoked as %configure (rather than %{configure})
|
2001-02-12 06:02:29 +08:00
|
|
|
# because the rest of the arguments will be expanded using %*.
|
1999-01-20 01:23:32 +08:00
|
|
|
#
|
2000-09-02 05:15:40 +08:00
|
|
|
# This is the version of %configure used through rpm-3.0.4.
|
2000-05-31 00:52:31 +08:00
|
|
|
#%configure \
|
|
|
|
# %{?__libtoolize:[ -f configure.in ] && %{__libtoolize} --copy --force} \
|
|
|
|
# CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix}
|
|
|
|
#
|
2000-02-14 03:24:19 +08:00
|
|
|
#------------------------------------------------------------------------------
|
2000-05-31 00:52:31 +08:00
|
|
|
# This is an improved version of %configure (from PLD team).
|
|
|
|
%configure \
|
2001-09-15 21:49:11 +08:00
|
|
|
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
|
|
|
|
CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
|
|
|
|
FFLAGS="${FFLAGS:-%optflags}" ; export FFLAGS ; \
|
2002-06-28 21:04:38 +08:00
|
|
|
./configure --host=%{_host} --build=%{_build} \\\
|
|
|
|
--target=%{_target_platform} \\\
|
|
|
|
--program-prefix=%{?_program_prefix} \\\
|
2000-05-31 11:35:51 +08:00
|
|
|
--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} \\\
|
2000-05-31 00:52:31 +08:00
|
|
|
--infodir=%{_infodir}
|
2001-06-15 12:56:33 +08:00
|
|
|
|
2000-05-31 00:52:31 +08:00
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
# The make install analogue of %configure:
|
2000-06-05 23:21:19 +08:00
|
|
|
%makeinstall \
|
2001-09-15 21:49:11 +08:00
|
|
|
make \\\
|
2000-06-06 00:40:04 +08:00
|
|
|
prefix=%{?buildroot:%{buildroot}}%{_prefix} \\\
|
|
|
|
exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \\\
|
|
|
|
bindir=%{?buildroot:%{buildroot}}%{_bindir} \\\
|
|
|
|
sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \\\
|
|
|
|
sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \\\
|
|
|
|
datadir=%{?buildroot:%{buildroot}}%{_datadir} \\\
|
|
|
|
includedir=%{?buildroot:%{buildroot}}%{_includedir} \\\
|
|
|
|
libdir=%{?buildroot:%{buildroot}}%{_libdir} \\\
|
|
|
|
libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \\\
|
|
|
|
localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \\\
|
|
|
|
sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \\\
|
|
|
|
mandir=%{?buildroot:%{buildroot}}%{_mandir} \\\
|
|
|
|
infodir=%{?buildroot:%{buildroot}}%{_infodir} \\\
|
2001-09-15 21:49:11 +08:00
|
|
|
install
|
2000-02-14 03:24:19 +08:00
|
|
|
|
1999-03-28 08:47:40 +08:00
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
# The GNUconfigure macro does the following:
|
2000-02-14 03:24:19 +08:00
|
|
|
# update config.guess and config.sub.
|
|
|
|
# regenerate all autoconf/automake files
|
|
|
|
# optionally change to a directory (make the directory if requested).
|
|
|
|
# run configure with correct prefix, platform, and CFLAGS.
|
|
|
|
# optionally restore current directory.
|
|
|
|
#
|
|
|
|
# Based on autogen.sh from GNOME and orginal GNUconfigure
|
|
|
|
#
|
|
|
|
%GNUconfigure(MCs:) \
|
|
|
|
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS; \
|
2001-12-21 00:28:46 +08:00
|
|
|
LDFLAGS="${LDFLAGS:-%{-s:-s}}" ; export LDFLAGS; \
|
2000-02-14 03:24:19 +08:00
|
|
|
%{-C:_mydir="`pwd`"; %{-M: %{__mkdir} -p %{-C*};} cd %{-C*}} \
|
|
|
|
dirs="`find ${_mydir} -name configure.in -print`"; export dirs; \
|
|
|
|
for coin in `echo ${dirs}` \
|
|
|
|
do \
|
|
|
|
dr=`dirname ${coin}`; \
|
|
|
|
if test -f ${dr}/NO-AUTO-GEN; then \
|
|
|
|
: \
|
|
|
|
else \
|
|
|
|
macrodirs=`sed -n -e 's,AM_ACLOCAL_INCLUDE(\(.*\)),\1,gp' < ${coin}`; \
|
|
|
|
( cd ${dr}; \
|
|
|
|
aclocalinclude="${ACLOCAL_FLAGS}"; \
|
|
|
|
for k in ${macrodirs}; do \
|
|
|
|
if test -d ${k}; then \
|
|
|
|
aclocalinclude="${aclocalinclude} -I ${k}"; \
|
|
|
|
##else \
|
|
|
|
## echo "**Warning**: No such directory \`${k}'. Ignored." \
|
|
|
|
fi \
|
|
|
|
done \
|
|
|
|
if grep "^AM_GNU_GETTEXT" configure.in >/dev/null; then \
|
|
|
|
if grep "sed.*POTFILES" configure.in >/dev/null; then \
|
|
|
|
: do nothing -- we still have an old unmodified configure.in \
|
|
|
|
else \
|
|
|
|
test -r ${dr}/aclocal.m4 || touch ${dr}/aclocal.m4; \
|
|
|
|
echo "no" | gettextize --force --copy; \
|
|
|
|
test -r ${dr}/aclocal.m4 && %{__chmod} u+w ${dr}/aclocal.m4; \
|
|
|
|
fi \
|
|
|
|
fi \
|
|
|
|
if grep "^AM_PROG_LIBTOOL" configure.in >/dev/null; then \
|
|
|
|
%{__libtoolize} --force --copy; \
|
|
|
|
fi \
|
|
|
|
aclocal ${aclocalinclude}; \
|
|
|
|
if grep "^AM_CONFIG_HEADER" configure.in >/dev/null; then \
|
|
|
|
%{__autoheader}; \
|
|
|
|
fi \
|
|
|
|
echo "Running automake --gnu ${am_opt} ..."; \
|
|
|
|
%{__automake} --add-missing --gnu ${am_opt}; \
|
|
|
|
%{__autoconf}; \
|
|
|
|
); \
|
|
|
|
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} %* ; \
|
1999-04-21 06:45:52 +08:00
|
|
|
%{-C:cd ${_mydir}; unset _mydir}
|
1999-05-06 03:01:01 +08:00
|
|
|
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
# Useful perl macros (from Artur Frysiak <wiget@t17.ds.pwr.wroc.pl>)
|
|
|
|
#
|
|
|
|
# For example, these can be used as (from ImageMagick.spec from PLD site)
|
|
|
|
# [...]
|
|
|
|
# BuildPrereq: perl
|
|
|
|
# [...]
|
|
|
|
# %package perl
|
|
|
|
# Summary: libraries and modules for access to ImageMagick from perl
|
|
|
|
# Group: Development/Languages/Perl
|
|
|
|
# Requires: %{name} = %{version}
|
|
|
|
# %requires_eq perl
|
|
|
|
# [...]
|
|
|
|
# %install
|
|
|
|
# rm -fr $RPM_BUILD_ROOT
|
|
|
|
# install -d $RPM_BUILD_ROOT/%{perl_sitearch}
|
|
|
|
# [...]
|
|
|
|
# %files perl
|
|
|
|
# %defattr(644,root,root,755)
|
|
|
|
# %{perl_sitearch}/Image
|
|
|
|
# %dir %{perl_sitearch}/auto/Image
|
|
|
|
#
|
2002-01-11 03:16:54 +08:00
|
|
|
%requires_eq() %(LC_ALL="C" echo '%*' | xargs -r rpm -q --qf 'Requires: %%{name} = %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not")
|
2004-04-08 08:12:01 +08:00
|
|
|
%perl_sitearch %(eval "`%{__perl} -V:installsitearch`"; echo $installsitearch)
|
|
|
|
%perl_sitelib %(eval "`%{__perl} -V:installsitelib`"; echo $installsitelib)
|
|
|
|
%perl_vendorarch %(eval "`%{__perl} -V:installvendorarch`"; echo $installvendorarch)
|
|
|
|
%perl_vendorlib %(eval "`%{__perl} -V:installvendorlib`"; echo $installvendorlib)
|
|
|
|
%perl_archlib %(eval "`%{__perl} -V:installarchlib`"; echo $installarchlib)
|
|
|
|
%perl_privlib %(eval "`%{__perl} -V:installprivlib`"; echo $installprivlib)
|
2000-02-14 03:24:19 +08:00
|
|
|
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
# arch macro for all Intel i?86 compatibile processors
|
|
|
|
# (Note: This macro (and it's analogues) will probably be obsoleted when
|
|
|
|
# rpm can use regular expressions against target platforms in macro
|
2001-02-12 06:02:29 +08:00
|
|
|
# conditionals.
|
2000-02-14 03:24:19 +08:00
|
|
|
#
|
2004-03-28 10:41:32 +08:00
|
|
|
%ix86 i386 i486 i586 i686 pentium3 pentium4 athlon
|
2000-02-14 03:24:19 +08:00
|
|
|
|
2007-06-21 20:13:04 +08:00
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
# arch macro for all supported ARM processors
|
|
|
|
%arm armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l
|
|
|
|
|
2000-02-14 03:24:19 +08:00
|
|
|
#------------------------------------------------------------------------
|
|
|
|
# Use in %install to generate locale specific file lists. For example,
|
|
|
|
#
|
|
|
|
# %install
|
|
|
|
# ...
|
|
|
|
# %find_lang %{name}
|
|
|
|
# ...
|
|
|
|
# %files -f %{name}.lang
|
|
|
|
#
|
|
|
|
%find_lang @RPMCONFIGDIR@/find-lang.sh %{buildroot}
|
2001-03-18 03:55:09 +08:00
|
|
|
|
|
|
|
# \endverbatim
|
|
|
|
#*/
|