.\" Generated by scdoc 1.11.4 .\" Complete documentation for this program is not available as a GNU info page .ie \n(.g .ds Aq \(aq .el .ds Aq ' .nh .ad l .\" Begin generated content: .TH "RPMBUILD-CONFIG" "5" "2026-01-08" "RPM 6.0.1" .PP .SH NAME \fBrpmbuild-config\fR - rpmbuild macro configuration .PP .SH SYNOPSIS \fINAME\fR \fIVALUE\fR .PP .SH DESCRIPTION The primary configuration mechanism in \fBrpmbuild\fR is \fBrpm-macros\fR(7).\& See \fBrpm-config\fR(5) for the description of the general mechanism, this manual only describes the configurables affecting \fBrpmbuild\fR operation.\& .PP .SH CONFIGURATION The following configurables are supported for the \fBrpm\fR build operation, typically invoked through the \fBrpmbuild\fR command.\& .PP .SS Locations and filenames .PP \fB%_builddir\fR \fIDIRECTORY\fR .RS 4 The directory where the per-package build directories will be placed when building.\& .PP .RE \fB%_fileattrsdir\fR \fIDIRECTORY\fR .RS 4 The directory where the file classifier configuration is located.\& .PP .RE \fB%_rpmdir\fR \fIDIRECTORY\fR .RS 4 The directory where newly built binary packages will be written.\& .PP .RE \fB%_rpmfilename\fR \fITEMPLATE\fR .RS 4 The output binary package filename query format used when building binary packages, as described by \fBrpm-queryformat\fR(7).\& The filename is considered relative to \fB%_rpmdir\fR.\& .PP .RE \fB%_sourcedir\fR \fIDIRECTORY\fR .RS 4 The directory where the sources and patches are found when building.\& .PP .RE \fB%_srcrpmdir\fR \fIDIRECTORY\fR .RS 4 The directory where newly built source packages will be written.\& .PP .RE \fB%_topdir\fR \fIDIRECTORY\fR .RS 4 The toplevel directory under which the package build directories reside by default.\& .PP .RE .SS Informational tags These are a special group of macros that if defined, behave as if the corresponding tag had been used in a specfile.\& This allows changing the values without modifying thousands of specfiles.\& .PP \fB%bugurl\fR \fIURL\fR .RS 4 Configurable bug URL, same as BugURL: tag in a specfile.\& If set, should point to a website for searching for existing and filing new issues for this package.\& .PP .RE \fB%distribution\fR \fISTRING\fR .RS 4 Configurable distribution informationsame as Distribution: tag in a specfile.\& .PP .RE \fB%disturl\fR \fIURL\fR .RS 4 Configurable distribution URL, same as DistURL: tag in a specfile.\& .PP .RE \fB%disttag\fR \fISTRING\fR .RS 4 Configurable distribution tag, same as DistTag: tag in a specfile.\& .PP .RE \fB%modularitylabel\fR \fISTRING\fR .RS 4 Configurable modularity label, same as ModularityLabel: in a specfile.\& Obsolete.\& .PP .RE \fB%packager\fR \fISTRING\fR .RS 4 Configurable packager information, same as Packager: in a specfile.\& .PP .RE \fB%translationurl\fR \fIURL\fR .RS 4 Configurable translation URL, same as TranslationURL: in a specfile.\& .PP .RE \fB%upstreamreleases\fR \fIURL\fR .RS 4 Configurable URL for checking for newer upstream releases, same as UpstreamReleases: in a specfile.\& .PP .RE \fB%vendor\fR \fISTRING\fR .RS 4 Configurable vendor information, same as Vendor: in a specfile.\& .PP .RE .SS Build operation These settings affect various aspects of the build and can cause a build to fail or succeed, but have no direct impact on the produced packages.\& .PP \fB%_build_pkgcheck\fR \fIEXECUTABLE\fR .RS 4 A program to call for each successfully built and written binary package, such as \fBrpmlint\fR.\& The path to the package is passed to the program as a command-line argument.\& .PP .RE \fB%_build_pkgcheck_set\fR \fIEXECUTABLE\fR .RS 4 A program to call for the whole binary package set after a successfully build, such as \fBrpmlint\fR.\& The paths to the package set are passed to the program as command-line arguments.\& .PP .RE \fB%_build_pkgcheck_srpm\fR \fIEXECUTABLE\fR .RS 4 A program to call for each successfully built and written source package, such as \fBrpmlint\fR.\& The path to the package is passed to the program as a command-line argument.\& .PP .RE \fB%_default_patch_flags\fR \fISTRING\fR .RS 4 Set of default options on all \fB%patch\fR applications.\& .PP .RE \fB%_default_patch_fuzz\fR \fINUMBER\fR .RS 4 Default fuzz level for patch application in spec file.\& See \fBpatch\fR(1) for details.\& .PP .RE \fB%_smp_ncpus_max\fR \fINUMBER\fR .RS 4 A hard limit for maximum number of CPU'\&s to use in parallel during a package build.\& Zero means unlimited.\& .PP .RE \fB%_smp_nthreads_max\fR \fINUMBER\fR .RS 4 A hard limit for maximum number of threads to use in parallel during a package build.\& Zero means unlimited.\& .PP .RE \fB%_smp_tasksize_proc\fR \fINUMBER\fR .RS 4 Assumed task size of build processes (during compilation).\& Used for tuning the amount of parallelism based on available memory.\& .PP .RE \fB%_smp_tasksize_thread\fR \fINUMBER\fR .RS 4 Assumed task size of threads (during package generation).\& Used for tuning the amount of parallelism based on available memory.\& .PP .RE .SS Package generation These settings affect various aspects of the produced binary and source packages.\& .PP \fB%build_mtime_policy\fR \fIPOLICY\fR .RS 4 Define how file timestamps are handled in built packages.\& Clamping means ensuring the value does not exceed the threshold value.\& .PD 0 .IP \(bu 4 \fBclamp_to_buildtime\fR: Clamp file timestamps to package buildtime.\& .IP \(bu 4 \fBclamp_to_source_date_epoch\fR: Clamp file timestamps to the \fBSOURCE_DATE_EPOCH\fR environment variable.\& .PD .PP .RE \fB%clamp_mtime_to_source_date_epoch\fR \fIBOOLEAN\fR .RS 4 Alias for \fB%build_mtime_policy\fR \fBclamp_to_source_date_epoch\fR.\& Do not use.\& Deprecated and scheduled for removal.\& .PP .RE \fB%source_date_epoch_from_changelog\fR \fIBOOLEAN\fR .RS 4 Whether to set the \fBSOURCE_DATE_EPOCH\fR environment variable from the timestamp of the topmost \fB%changelog\fR entry.\& .PP .RE \fB%use_source_date_epoch_as_buildtime\fR \fIBOOLEAN\fR .RS 4 Whether to use the \fBSOURCE_DATE_EPOCH\fR environment variable value as the buildtime of packages.\& .PP .RE \fB%_binary_filedigest_algorithm\fR \fIHASHALGO\fR .RS 4 The algorithm to use for generating per-file checksums (aka digests) of binary packages.\& See \fBrpm-config\fR(5) for the supported values.\& .PP .RE \fB%_binary_payload\fR \fIIOFLAGS\fR .RS 4 The IO method and compression to use for generating the payload of binary packages.\& See \fBrpm-payloadflags\fR(7).\& .PP .RE \fB%_buildhost\fR \fIHOSTNAME\fR .RS 4 Use \fIHOSTNAME\fR as the package buildhost instead of acquiring the value from \fBgethostname\fR(2).\& .PP .RE \fB%_buildtime\fR \fITIMESTAMP\fR .RS 4 Use \fITIMESTAMP\fR as the package buildtime instead of acquiring the value from \fBtime\fR(2).\& .PP .RE \fB%_changelog_trimage\fR \fITIMESTAMP\fR .RS 4 Maximum age of preserved changelog entries in binary packages, relative to newest existing entry.\& Unix timestamp format.\& The value of zero disables trimming by age.\& .PP .RE \fB%_changelog_trimtime\fR \fITIMESTAMP\fR .RS 4 An alternative strategy for changelog trimming: trim all changelog entries older than the specified timestamp.\& Unix timestamp format.\& The value of zero disables trimming by time.\& .PP .RE \fB%_docdir_fmt\fR \fITEMPLATE\fR .RS 4 A template for the per-package documentation directory name, ie.\& the files packaged with \fB%doc\fR.\& .PP .RE \fB%__docdir_path\fR \fIPATH\fR .RS 4 A colon separated list of directories whose contents should be always considered as documentation.\& .PP .RE \fB%_openpgp_autosign_id\fR \fIKEYID\fR .RS 4 The OpenPGP key id or fingerprint to use for automatically signing packages after a successful build.\& See also \fBrpmsign\fR(1).\& .PP .RE \fB%_rpmformat\fR \fIVERSION\fR .RS 4 The RPM package format to produce.\& Supported values are: .PD 0 .IP \(bu 4 \fB4\fR: RPM v4 format .IP \(bu 4 \fB6\fR: RPM v6 format .PD .PP .RE \fB%_source_filedigest_algorithm\fR \fIHASHALGO\fR .RS 4 The algorithm to use for generating per-file checksums (aka digests) of source packages.\& See \fBrpm-config\fR(5) for the supported values.\& .PP .RE \fB%_source_payload\fR .RS 4 The IO method and compression to use for generating the payload of source packages.\& See \fBrpm-payloadflags\fR(7).\& .PP .RE \fB%__gpg_reserved_space\fR \fINUMBER\fR .RS 4 The number of bytes to reserve for signatures in the signature header.\& This reserve helps to speed up package signing significantly.\& .PP .RE .SS Debuginfo generation Debuginfo sub-packages contain information necessary to debug otherwise release-specification builds with a debugger.\& These settings determine whether debuginfo packages are generated and various aspects of the generated debugging information.\& .PP \fB%_build_id_links\fR \fIMODE\fR .RS 4 Defines how and if build_id links are generated for ELF files.\& The following settings are supported: .PD 0 .IP \(bu 4 \fBnone\fR: No build_id links are generated.\& .IP \(bu 4 \fBalldebug\fR: Generate rpm < 4.\&14 style build_id links, ie everything in the -debuginfo package.\& .IP \(bu 4 \fBseparate\fR: Generate build_id links in binary packages.\& .IP \(bu 4 \fBcompat\fR: Same as \fBseparate\fR but with a compatibility link(s) in the -debuginfo packages.\& .PD .PP .RE \fB%_debuginfo_subpackages\fR \fIBOOLEAN\fR .RS 4 Whether rpm should create separate debuginfo packages for each subpackage.\& .PP .RE \fB%_debugsource_packages\fR \fIBOOLEAN\fR .RS 4 Whether rpm should put debug source files into their own subpackage.\& .PP .RE \fB%_enable_debug_packages\fR \fIBOOLEAN\fR .RS 4 Whether rpm should generate debuginfo subpackages.\& .PP .RE \fB%_include_gdb_index\fR \fIBOOLEAN\fR .RS 4 Include a .\&gdb_index section in the .\&debug files.\& Requires \fB%_enable_debug_packages\fR to be enabled and \fBgdb-add-index\fR(1) to be installed.\& .PP .RE \fB%_include_minidebuginfo\fR \fIBOOLEAN\fR .RS 4 Include minimal debug information in build binaries.\& Requires \fB%_enable_debug_packages\fR to be enabled.\& .PP .RE \fB%_no_recompute_build_ids\fR \fIBOOLEAN\fR .RS 4 Disable recomputation of build-ids.\& Cannot be used with \fB%_unique_build_ids\fR.\& .PP .RE \fB%_unique_build_ids\fR \fIBOOLEAN\fR .RS 4 Whether build-ids should be made unique between package version/releases when generating debuginfo packages.\& .PP .RE \fB%_unique_debug_names\fR \fIBOOLEAN\fR .RS 4 Whether .\&debug files should be made unique between package version, release and architecture.\& Requires \fB%_unique_build_ids\fR to be enabled.\& .PP .RE \fB%_unique_debug_srcs\fR \fIBOOLEAN\fR .RS 4 Whether the /usr/debug/src/ directories should be unique between package version, release and architecture.\& .PP .RE \fB%__find_debuginfo\fR \fIEXECUTABLE\fR .RS 4 The location of the debuginfo helper executable.\& .PP .RE .SS Legacy compatibility These settings deal with several decades of backwards compatibility.\& Most of them determine whether a particular issue is considered an error or just a warning.\& Sometimes also useful for temporarily working around issues while packaging.\& .PP \fB%_binaries_in_noarch_packages_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether ELF binaries in noarch packages should terminate a build.\& .PP .RE \fB%_duplicate_files_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether duplicate files in \fB%files\fR section should terminate a build.\& .PP .RE \fB%_empty_manifest_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether an empty \fB%files\fR manifest file should terminate a build.\& .PP .RE \fB%_invalid_encoding_terminates_build\fR \fIBOOLEAN\fR .RS 4 Whether a non-UTF8 encoding in package data should terminate a build.\& .PP .RE \fB%__find_provides\fR \fIEXECUTABLE\fR .RS 4 The executable to use for rpm 3.\&x style provides generation.\& Do not use.\& Deprecated and scheduled for removal.\& .PP .RE \fB%__find_requires\fR \fIEXECUTABLE\fR .RS 4 The executable to use for rpm 3.\&x style requires generation.\& Do not use.\& Deprecated and scheduled for removal.\& .PP .RE \fB%_missing_build_ids_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether ELF files without build-ids should terminate a build.\& For historical reasons, this is only applicable if \fB%_enable_debug_packages\fR is also enabled.\& .PP .RE \fB%_missing_doc_files_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether missing %doc files in the build directory should terminate a build.\& .PP .RE \fB%_unpackaged_files_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether unpackaged files in a build root should terminate a build.\& .PP .RE \fB%_nonzero_exit_pkgcheck_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether the build of packages should fail if package checker (if defined) returns an error?\& See the \fB%_build_pkgcheck_*\fR macros.\& .PP .RE \fB%_use_internal_dependency_generator\fR \fIBOOLEAN\fR .RS 4 If enabled, use rpm 3.\&x style dependency generation.\& Do not use.\& Deprecated and scheduled for removal.\& .PP .RE \fB%_use_weak_usergroup_deps\fR \fIBOOLEAN\fR .RS 4 If enabled, dilute user() and group() requires into recommends.\& Useful when transitioning to sysusers.\&d based user/group management.\& .PP .RE \fB%_wrong_version_format_terminate_build\fR \fIBOOLEAN\fR .RS 4 Whether invalid version format in dependencies etc should terminate a build.\& .PP .RE .SH SEE ALSO \fBrpmbuild\fR(1), \fBrpm-common\fR(8), \fBrpm-macrofile\fR(5), \fBrpm-rpmrc\fR(5), \fBrpm-config\fR(5), \fBrpm-payloadflags\fR(7) \fBrpm-macros\fR(7)