.\" 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-03-06" "RPM 6.0.1" .PP .SH "نام (NAME)" rpmbuild-config \- پیکربندی ماکروهای rpmbuild .PP .SH "خلاصه دستور (SYNOPSIS)" \fINAME\fR \fIVALUE\fR .PP .SH "توضیحات (DESCRIPTION)" سازوکار اصلی پیکربندی در \fBrpmbuild\fR، ماکروهای \fBrpm-macros\fR(7) است.\& برای شرح سازوکار عمومی، به \fBrpm-config\fR(5) مراجعه کنید؛ این راهنما صرفاً متغیرهای پیکربندی اثرگذار بر عملکرد \fBrpmbuild\fR را شرح می‌دهد.\& .PP .SH "پیکربندی (CONFIGURATION)" متغیرهای پیکربندی زیر برای عملیات ساخت \fBrpm\fR پشتیبانی می‌شوند، که معمولاً از طریق دستور \fBrpmbuild\fR فراخوانی می‌گردد.\& .PP .SS "مسیرها و نام فایل‌ها (Locations and filenames)" .PP \fB%_builddir\fR \fIDIRECTORY\fR .RS 4 پوشه‌ای که هنگام ساخت، دایرکتوری‌های ساخت هر بسته در آن قرار می‌گیرد.\& .PP .RE \fB%_fileattrsdir\fR \fIDIRECTORY\fR .RS 4 پوشه‌ای که پیکربندی دسته‌بندی‌کننده فایل‌ها در آن قرار دارد.\& .PP .RE \fB%_rpmdir\fR \fIDIRECTORY\fR .RS 4 پوشه‌ای که بسته‌های باینری تازه ساخته‌شده در آن نوشته خواهند شد.\& .PP .RE \fB%_rpmfilename\fR \fITEMPLATE\fR .RS 4 قالب نام‌گذاری فایل بسته باینری خروجی هنگام ساخت بسته‌های باینری، مطابق با توضیحات \fBrpm-queryformat\fR(7).\& این نام فایل نسبت به \fB%_rpmdir\fR سنجیده می‌شود.\& .PP .RE \fB%_sourcedir\fR \fIDIRECTORY\fR .RS 4 پوشه‌ای که هنگام ساخت، کد منبع‌ها و وصله‌ها در آن یافت می‌شوند.\& .PP .RE \fB%_srcrpmdir\fR \fIDIRECTORY\fR .RS 4 پوشه‌ای که بسته‌های منبع تازه ساخته‌شده در آن نوشته خواهند شد.\& .PP .RE \fB%_topdir\fR \fIDIRECTORY\fR .RS 4 پوشه سطح بالایی که به طور پیش‌فرض، دایرکتوری‌های ساخت بسته در زیر آن قرار دارند.\& .PP .RE .SS "برچسب‌های اطلاعاتی (Informational tags)" این‌ها گروه ویژه‌ای از ماکروها هستند که در صورت تعریف شدن، به گونه‌ای عمل می‌کنند که گویی برچسب متناظر در یک specfile استفاده شده است.\& این قابلیت امکان تغییر مقادیر را بدون نیاز به دستکاری هزاران فایل spec فراهم می‌کند.\& .PP \fB%bugurl\fR \fIURL\fR .RS 4 نشانی اینترنتی گزارش باگ، مشابه برچسب BugURL: در یک specfile.\& در صورت تنظیم، باید به وب‌گاهی برای جستجوی مشکلات موجود و ثبت گزارش‌های جدید برای این بسته اشاره کند.\& .PP .RE \fB%distribution\fR \fISTRING\fR .RS 4 اطلاعات توزیع، مشابه برچسب Distribution: در یک specfile.\& .PP .RE \fB%disturl\fR \fIURL\fR .RS 4 نشانی اینترنتی توزیع، مشابه برچسب DistURL: در یک specfile.\& .PP .RE \fB%disttag\fR \fISTRING\fR .RS 4 برچسب توزیع، مشابه برچسب DistTag: در یک specfile.\& .PP .RE \fB%modularitylabel\fR \fISTRING\fR .RS 4 برچسب مدولار بودن، مشابه ModularityLabel: در یک specfile.\& منسوخ شده است.\& .PP .RE \fB%packager\fR \fISTRING\fR .RS 4 اطلاعات بسته‌بند، مشابه برچسب Packager: در یک specfile.\& .PP .RE \fB%translationurl\fR \fIURL\fR .RS 4 نشانی اینترنتی ترجمه، مشابه برچسب TranslationURL: در یک specfile.\& .PP .RE \fB%upstreamreleases\fR \fIURL\fR .RS 4 نشانی اینترنتی برای بررسی نسخه‌های جدیدتر بالادستی، مشابه برچسب UpstreamReleases: در یک specfile.\& .PP .RE \fB%vendor\fR \fISTRING\fR .RS 4 اطلاعات توزیع‌کننده (Vendor)، مشابه برچسب Vendor: در یک specfile.\& .PP .RE .SS "عملیات ساخت (Build operation)" این تنظیمات بر جنبه‌های مختلف فرایند ساخت اثر می‌گذارند و می‌توانند باعث شکست یا موفقیت در ساخت شوند، اما تاثیر مستقیمی بر بسته‌های تولیدشده ندارند.\& .PP \fB%_build_pkgcheck\fR \fIEXECUTABLE\fR .RS 4 برنامه‌ای که برای هر بسته باینری که با موفقیت ساخته و نوشته شد فراخوانی می‌شود، مانند \fBrpmlint\fR.\& مسیر فایل بسته به عنوان یک آرگومان خط فرمان به برنامه ارسال می‌گردد.\& .PP .RE \fB%_build_pkgcheck_set\fR \fIEXECUTABLE\fR .RS 4 برنامه‌ای که پس از ساخت موفقیت‌آمیز، برای کل مجموعه بسته‌های باینری فراخوانی می‌شود، مانند \fBrpmlint\fR.\& مسیرهای مجموعه بسته‌ها به عنوان آرگومان‌های خط فرمان به برنامه ارسال می‌گردند.\& .PP .RE \fB%_build_pkgcheck_srpm\fR \fIEXECUTABLE\fR .RS 4 برنامه‌ای که برای هر بسته منبع که با موفقیت ساخته و نوشته شد فراخوانی می‌شود، مانند \fBrpmlint\fR.\& مسیر بسته به عنوان یک آرگومان خط فرمان به برنامه ارسال می‌گردد.\& .PP .RE \fB%_default_patch_flags\fR \fISTRING\fR .RS 4 مجموعه گزینه‌های پیش‌فرض هنگام اعمال تمام ماکروهای \fB%patch\fR.\& .PP .RE \fB%_default_patch_fuzz\fR \fINUMBER\fR .RS 4 میزان تقریبی مجاز (fuzz level) پیش‌فرض برای اعمال وصله در فایل spec.\& برای جزئیات به \fBpatch\fR(1) مراجعه کنید.\& .PP .RE \fB%_smp_ncpus_max\fR \fINUMBER\fR .RS 4 حد نهایی برای حداکثر تعداد هسته‌های پردازنده (CPU) مورد استفاده به صورت موازی هنگام ساخت بسته.\& مقدار صفر به معنای نامحدود است.\& .PP .RE \fB%_smp_nthreads_max\fR \fINUMBER\fR .RS 4 حد نهایی برای حداکثر تعداد ریسمان‌ها جهت استفاده موازی هنگام ساخت بسته.\& مقدار صفر به معنای نامحدود است.\& .PP .RE \fB%_smp_tasksize_proc\fR \fINUMBER\fR .RS 4 اندازه تقریبی تسک در فرآیندهای ساخت (هنگام کامپایل).\& برای تنظیم میزان موازی‌سازی بر اساس حافظه موجود به کار می‌رود.\& .PP .RE \fB%_smp_tasksize_thread\fR \fINUMBER\fR .RS 4 اندازه تقریبی تسک در ریسمان‌ها (هنگام تولید بسته).\& برای تنظیم میزان موازی‌سازی بر اساس حافظه موجود به کار می‌رود.\& .PP .RE .SS "تولید بسته (Package generation)" این تنظیمات بر جنبه‌های گوناگون بسته‌های باینری و منبع تولیدشده اثر می‌گذارند.\& .PP \fB%build_mtime_policy\fR \fIPOLICY\fR .RS 4 نحوه مدیریت زمان‌مهر (timestamp) فایل‌ها را در بسته‌های ساخته‌شده تعیین می‌کند.\& محدود کردن (Clamping) به معنای اطمینان از فراتر نرفتن مقدار از مقدار آستانه است.\& .PD 0 .IP \(bu 4 \fBclamp_to_buildtime\fR: زمان‌مهر فایل‌ها به زمان ساخت بسته محدود می‌شود.\& .IP \(bu 4 \fBclamp_to_source_date_epoch\fR: زمان‌مهر فایل‌ها به متغیر محیطی \fBSOURCE_DATE_EPOCH\fR محدود می‌شود.\& .PD .PP .RE \fB%clamp_mtime_to_source_date_epoch\fR \fIBOOLEAN\fR .RS 4 نام مستعار برای \fB%build_mtime_policy\fR \fBclamp_to_source_date_epoch\fR.\& استفاده نشود.\& منسوخ شده و برای حذف برنامه‌ریزی شده است.\& .PP .RE \fB%source_date_epoch_from_changelog\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا مقدار متغیر محیطی \fBSOURCE_DATE_EPOCH\fR از روی زمان‌مهر بالاترین ورودی در بخش \fB%changelog\fR تنظیم شود یا خیر.\& .PP .RE \fB%use_source_date_epoch_as_buildtime\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا از مقدار متغیر محیطی \fBSOURCE_DATE_EPOCH\fR به عنوان زمان ساخت بسته‌ها استفاده شود یا خیر.\& .PP .RE \fB%_binary_filedigest_algorithm\fR \fIHASHALGO\fR .RS 4 الگوریتمی که برای تولید چک‌سام‌های تک‌تک فایل‌ها (یا دایجست‌ها) در بسته‌های باینری به کار می‌رود.\& برای مقادیر پشتیبانی‌شده به \fBrpm-config\fR(5) مراجعه کنید.\& .PP .RE \fB%_binary_payload\fR \fIIOFLAGS\fR .RS 4 روش ورودی/خروجی و فشرده‌سازی مورد استفاده برای ایجاد محموله (payload) در بسته‌های باینری.\& به \fBrpm-payloadflags\fR(7) مراجعه کنید.\& .PP .RE \fB%_buildhost\fR \fIHOSTNAME\fR .RS 4 استفاده از \fIHOSTNAME\fR به عنوان نام میزبان ساخت بسته، به جای دریافت این مقدار از \fBgethostname\fR(2).\& .PP .RE \fB%_buildtime\fR \fITIMESTAMP\fR .RS 4 استفاده از \fITIMESTAMP\fR به عنوان زمان ساخت بسته، به جای دریافت این مقدار از \fBtime\fR(2).\& .PP .RE \fB%_changelog_trimage\fR \fITIMESTAMP\fR .RS 4 حداکثر عمر ورودی‌های نگه‌داری‌شده در تغییرات (changelog) در بسته‌های باینری، نسبت به جدیدترین ورودی موجود.\& در قالب برچسب زمانی یونیکس (Unix timestamp).\& مقدار صفر برش بر اساس سن را غیرفعال می‌کند.\& .PP .RE \fB%_changelog_trimtime\fR \fITIMESTAMP\fR .RS 4 راهبردی جایگزین برای برش لیست تغییرات: حذف تمام ورودی‌های تغییرات قدیمی‌تر از زمان‌مهر مشخص‌شده.\& در قالب برچسب زمانی یونیکس.\& مقدار صفر برش بر اساس زمان را غیرفعال می‌کند.\& .PP .RE \fB%_docdir_fmt\fR \fITEMPLATE\fR .RS 4 الگویی برای نام دایرکتوری مستندات مربوط به هر بسته، یعنی فایل‌هایی که با ماکروی \fB%doc\fR بسته‌بندی شده‌اند.\& .PP .RE \fB%__docdir_path\fR \fIPATH\fR .RS 4 فهرستی از دایرکتوری‌ها که با کولون (دونقطه) از هم جدا شده‌اند و محتوای آن‌ها همواره باید به عنوان مستندات در نظر گرفته شود.\& .PP .RE \fB%_openpgp_autosign_id\fR \fIKEYID\fR .RS 4 شناسه کلید OpenPGP یا اثرانگشت (fingerprint) برای استفاده در امضای خودکار بسته‌ها پس از یک ساخت موفقیت‌آمیز.\& همچنین به \fBrpmsign\fR(1) مراجعه کنید.\& .PP .RE \fB%_rpmformat\fR \fIVERSION\fR .RS 4 فرمت بسته RPM برای تولید.\& مقادیر پشتیبانی‌شده عبارتند از: .PD 0 .IP \(bu 4 \fB4\fR: فرمت RPM نسخه ۴ (RPM v4) .IP \(bu 4 \fB6\fR: فرمت RPM نسخه ۶ (RPM v6) .PD .PP .RE \fB%_source_filedigest_algorithm\fR \fIHASHALGO\fR .RS 4 الگوریتم مورد استفاده برای تولید چک‌سام فایل‌ها (یا دایجست‌ها) در بسته‌های منبع.\& برای مقادیر پشتیبانی‌شده به \fBrpm-config\fR(5) مراجعه کنید.\& .PP .RE \fB%_source_payload\fR .RS 4 روش ورودی/خروجی و فشرده‌سازی برای تولید محموله بسته‌های منبع.\& به \fBrpm-payloadflags\fR(7) مراجعه کنید.\& .PP .RE \fB%__gpg_reserved_space\fR \fINUMBER\fR .RS 4 تعداد بایت‌های رزروشده برای امضاها در هدر امضا.\& این فضای رزروشده سرعت امضای بسته‌ها را به شکل چشمگیری افزایش می‌دهد.\& .PP .RE .SS "تولید اطلاعات اشکال‌زدایی (Debuginfo generation)" زیربسته‌های debuginfo حاوی اطلاعات لازم برای اشکال‌زدایی ساخت‌هایی هستند که در غیر این صورت برای انتشار عمومی بهینه‌سازی شده‌اند.\& این تنظیمات مشخص می‌کنند که آیا بسته‌های debuginfo تولید شوند یا خیر و جنبه‌های گوناگون اطلاعات اشکال‌زدایی تولیدشده را کنترل می‌نمایند.\& .PP \fB%_build_id_links\fR \fIMODE\fR .RS 4 مشخص می‌کند پیوندهای build_id برای فایل‌های ELF چگونه و آیا اصلاً تولید شوند یا خیر.\& تنظیمات زیر پشتیبانی می‌شوند: .PD 0 .IP \(bu 4 \fBnone\fR: هیچ پیوند build_id تولید نمی‌شود.\& .IP \(bu 4 \fBalldebug\fR: تولید پیوندهای build_id به سبک نسخه‌های قدیمی rpm < 4.\&14؛ یعنی همه موارد در بسته -debuginfo قرار می‌گیرد.\& .IP \(bu 4 \fBseparate\fR: تولید پیوندهای build_id در بسته‌های باینری.\& .IP \(bu 4 \fBcompat\fR: همانند \fBseparate\fR، اما همراه با پیوند(های) سازگاری در بسته‌های -debuginfo.\& .PD .PP .RE \fB%_debuginfo_subpackages\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا rpm باید برای هر زیربسته، بسته‌های debuginfo جداگانه ایجاد کند یا خیر.\& .PP .RE \fB%_debugsource_packages\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا rpm باید فایل‌های منبع اشکال‌زدایی را در زیربسته اختصاصی خود قرار دهد یا خیر.\& .PP .RE \fB%_enable_debug_packages\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا rpm باید زیربسته‌های debuginfo را تولید کند یا خیر.\& .PP .RE \fB%_include_gdb_index\fR \fIBOOLEAN\fR .RS 4 گنجاندن یک بخش .\&gdb_index در فایل‌های .\&debug.\& نیازمند فعال بودن \fB%_enable_debug_packages\fR و نصب بودن \fBgdb-add-index\fR(1) است.\& .PP .RE \fB%_include_minidebuginfo\fR \fIBOOLEAN\fR .RS 4 گنجاندن حداقل اطلاعات اشکال‌زدایی در باینری‌های ساخته‌شده.\& نیازمند فعال بودن \fB%_enable_debug_packages\fR است.\& .PP .RE \fB%_no_recompute_build_ids\fR \fIBOOLEAN\fR .RS 4 غیرفعال کردن محاسبه مجدد build-idها.\& نمی‌تواند هم‌زمان با \fB%_unique_build_ids\fR استفاده شود.\& .PP .RE \fB%_unique_build_ids\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا هنگام ساخت بسته‌های debuginfo، شناسه‌های build-id میان نسخه‌ها/انتشارهای بسته یکتا باشند یا خیر.\& .PP .RE \fB%_unique_debug_names\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا فایل‌های .\&debug میان نسخه، انتشار و معماری بسته یکتا باشند یا خیر.\& نیازمند فعال بودن \fB%_unique_build_ids\fR است.\& .PP .RE \fB%_unique_debug_srcs\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا دایرکتوری‌های /usr/debug/src/ میان نسخه، انتشار و معماری بسته یکتا باشند یا خیر.\& .PP .RE \fB%__find_debuginfo\fR \fIEXECUTABLE\fR .RS 4 مسیر فایل اجرایی کمکی debuginfo.\& .PP .RE .SS "سازگاری با نسخه‌های قدیمی (Legacy compatibility)" این تنظیمات مربوط به چندین دهه سازگاری رو به عقب هستند.\& اکثر آن‌ها مشخص می‌کنند که آیا یک مسئله خاص خطا تلقی شود یا صرفاً یک هشدار.\& گاهی اوقات برای دور زدن موقت مشکلات هنگام بسته‌بندی نیز کاربرد دارند.\& .PP \fB%_binaries_in_noarch_packages_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا وجود باینری‌های ELF در بسته‌های noarch باید فرایند ساخت را متوقف کند یا خیر.\& .PP .RE \fB%_duplicate_files_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا وجود فایل‌های تکراری در بخش \fB%files\fR باید فرایند ساخت را متوقف کند یا خیر.\& .PP .RE \fB%_empty_manifest_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا یک فایل مانیفست خالی در \fB%files\fR باید فرایند ساخت را متوقف کند یا خیر.\& .PP .RE \fB%_invalid_encoding_terminates_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا رمزگذاری غیر UTF-8 در داده‌های بسته باید فرایند ساخت را متوقف کند یا خیر.\& .PP .RE \fB%__find_provides\fR \fIEXECUTABLE\fR .RS 4 فایل اجرایی مورد استفاده برای تولید provides به سبک rpm 3.\&x.\& استفاده نشود.\& منسوخ شده و برای حذف برنامه‌ریزی شده است.\& .PP .RE \fB%__find_requires\fR \fIEXECUTABLE\fR .RS 4 فایل اجرایی مورد استفاده برای تولید requires به سبک rpm 3.\&x.\& استفاده نشود.\& منسوخ شده و برای حذف برنامه‌ریزی شده است.\& .PP .RE \fB%_missing_build_ids_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا فایل‌های ELF فاقد build-id باید فرایند ساخت را متوقف کنند یا خیر.\& به دلایل تاریخی، این گزینه تنها در صورتی اعمال می‌شود که \fB%_enable_debug_packages\fR نیز فعال باشد.\& .PP .RE \fB%_missing_doc_files_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا نبود فایل‌های %doc در دایرکتوری ساخت باید فرایند ساخت را متوقف کند یا خیر.\& .PP .RE \fB%_unpackaged_files_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا فایل‌های بسته‌بندی‌نشده در ریشه ساخت (build root) باید فرایند ساخت را متوقف کنند یا خیر.\& .PP .RE \fB%_nonzero_exit_pkgcheck_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا در صورت بازگرداندن خطا توسط بررسی‌کننده بسته (در صورت تعریف شدن)، فرایند ساخت بسته باید شکست بخورد یا خیر؟\& ماکروهای \fB%_build_pkgcheck_*\fR را ببینید.\& .PP .RE \fB%_use_internal_dependency_generator\fR \fIBOOLEAN\fR .RS 4 در صورت فعال بودن، از تولید وابستگی به سبک rpm 3.\&x استفاده می‌کند.\& استفاده نشود.\& منسوخ شده و برای حذف برنامه‌ریزی شده است.\& .PP .RE \fB%_use_weak_usergroup_deps\fR \fIBOOLEAN\fR .RS 4 در صورت فعال بودن، نیازمندی‌های ()user و ()group را به سطح توصیه‌شده (recommends) تعدیل می‌کند.\& هنگام گذار به مدیریت کاربر/گروه مبتنی بر sysusers.\&d مفید است.\& .PP .RE \fB%_wrong_version_format_terminate_build\fR \fIBOOLEAN\fR .RS 4 تعیین می‌کند که آیا فرمت نامعتبر نسخه در وابستگی‌ها و غیره باید فرایند ساخت را متوقف کند یا خیر.\& .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)