الضبط¶
عناصر
الضبط
التالية
مدعومة
لعملية
بناء rpm،
والتي
تُستدعى
عادةً عبر
أمر rpmbuild.
المواقع وأسماء الملفات¶
%_builddir DIRECTORY
الدليل
الذي ستوضع
فيه أدلة
بناء كل
حزمة عند
البناء.
%_fileattrsdir DIRECTORY
الدليل
الذي يقع
فيه ضبط
مصنّف
الملفات.
%_rpmdir DIRECTORY
الدليل
الذي
ستُكتب فيه
الحزم
الثنائية
المبنية
حديثاً.
%_rpmfilename TEMPLATE
تنسيق
استعلام
اسم ملف
الحزمة
الثنائية
المُخرَجة
المُستخدم
عند بناء
الحزم
الثنائية،
كما هو
موصوف في
rpm-queryformat(7). يُعتبر
اسم الملف
نسبياً إلى
%_rpmdir.
%_sourcedir DIRECTORY
الدليل
الذي توجد
فيه
المصادر
والرقائع
عند
البناء.
%_srcrpmdir DIRECTORY
الدليل
الذي
ستُكتب فيه
حزم المصدر
المبنية
حديثاً.
%_topdir DIRECTORY
الدليل
العلوي
الذي تقبع
تحته أدلة
بناء
الحزمة
افتراضياً.
وسوم معلوماتية¶
هذه
مجموعة
خاصة من
الماكرو
التي إن
عُرِّفت،
تتصرف كما
لو أن الوسم
المقابل قد
استُخدم في
ملف spec. يسمح
هذا بتغيير
القيم دون
تعديل آلاف
ملفات spec.
%bugurl URL
رابط
العلة
القابل
للضبط، مثل
وسم BugURL: في ملف
spec. إذا ضُبط،
يجب أن يشير
إلى موقع
ويب للبحث
عن
المشكلات
الموجودة
والإبلاغ
عن مشكلات
جديدة لهذه
الحزمة.
%distribution STRING
معلومات
التوزيع
القابلة
للضبط، مثل
وسم Distribution: في
ملف spec.
%disturl URL
رابط
التوزيع
القابل
للضبط، مثل
وسم DistURL: في ملف
spec.
%disttag STRING
وسم
التوزيع
القابل
للضبط، مثل
وسم DistTag: في ملف
spec.
%modularitylabel STRING
لصيقة
النمطية
القابلة
للضبط، مثل
ModularityLabel: في ملف spec.
عفا عليها
الزمن.
%packager STRING
معلومات
المحزِّم
القابلة
للضبط، مثل
Packager: في ملف spec.
%translationurl URL
رابط
الترجمة
القابل
للضبط، مثل
TranslationURL: في ملف spec.
%upstreamreleases URL
رابط
قابل للضبط
للتحقق من
إصدارات
المنبع
الأحدث،
مثل UpstreamReleases: في
ملف spec.
%vendor STRING
معلومات
المورّد
القابلة
للضبط، مثل
Vendor: في ملف spec.
عملية البناء¶
تؤثر هذه
الإعدادات
على جوانب
مختلفة من
البناء
ويمكن أن
تتسبب في
فشل البناء
أو نجاحه،
ولكن ليس
لها تأثير
مباشر على
الحزم
المُنتَجة.
%_build_pkgcheck EXECUTABLE
برنامج
يُستدعى
لكل حزمة
ثنائية
بُنيت
وكُتبت
بنجاح، مثل
rpmlint. يُمرّر
مسار
الحزمة إلى
البرنامج
كمعامل سطر
أوامر.
%_build_pkgcheck_set EXECUTABLE
برنامج
يُستدعى
لمجموعة
الحزم
الثنائية
الكاملة
بعد بناء
ناجح، مثل
rpmlint. تُمرّر
مسارات
مجموعة
الحزم إلى
البرنامج
كمعاملات
سطر أوامر.
%_build_pkgcheck_srpm EXECUTABLE
برنامج
يُستدعى
لكل حزمة
مصدر بُنيت
وكُتبت
بنجاح، مثل
rpmlint. يُمرّر
مسار
الحزمة إلى
البرنامج
كمعامل سطر
أوامر.
%_default_patch_flags STRING
مجموعة
من
الخيارات
المبدئية
على كل
تطبيقات %patch.
%_default_patch_fuzz NUMBER
مستوى
التشويش
المبدئي
لتطبيق
الرقعة في
ملف spec. طالع
patch(1)
للتفاصيل.
%_smp_ncpus_max NUMBER
حد صارم
لأقصى عدد
من
المعالجات (CPU)
لاستخدامها
بالتوازي
أثناء بناء
الحزمة.
يعني الصفر
غير محدود.
%_smp_nthreads_max NUMBER
حد صارم
لأقصى عدد
من
المسارات (threads)
لاستخدامها
بالتوازي
أثناء بناء
الحزمة.
يعني الصفر
غير محدود.
%_smp_tasksize_proc NUMBER
حجم
المهمة
المفترض
لعمليات
البناء
(أثناء
التصريف).
يُستخدم
لضبط مقدار
التوازي
بناءً على
الذاكرة
المتاحة.
%_smp_tasksize_thread NUMBER
حجم
المهمة
المفترض
للمسارات
(أثناء
توليد
الحزمة).
يُستخدم
لضبط مقدار
التوازي
بناءً على
الذاكرة
المتاحة.
توليد الحزم¶
تؤثر هذه
الإعدادات
على جوانب
مختلفة من
الحزم
الثنائية
والمصدرية
المُنتَجة.
%build_mtime_policy POLICY
حدد كيف
تُعالج
طوابع
الملفات
الزمنية في
الحزم
المبنية.
يعني
التقييد
ضمان عدم
تجاوز
القيمة
لقيمة
العتبة.
- clamp_to_buildtime: تقييد
طوابع
الملفات
الزمنية
بوقت بناء
الحزمة.
- clamp_to_source_date_epoch:
تقييد
طوابع
الملفات
الزمنية
بمتغير
البيئة
SOURCE_DATE_EPOCH.
%clamp_mtime_to_source_date_epoch BOOLEAN
اسم
مستعار لـ
%build_mtime_policy clamp_to_source_date_epoch. لا
تستخدمه.
مهجور
ومجدول
للإزالة.
%source_date_epoch_from_changelog BOOLEAN
سواءً
وجب ضبط
متغير
البيئة SOURCE_DATE_EPOCH
من الطابع
الزمني
لمدخلة %changelog
العلوية.
%use_source_date_epoch_as_buildtime BOOLEAN
سواءً
وجب
استخدام
قيمة متغير
البيئة SOURCE_DATE_EPOCH
كـ وقت بناء
الحزم.
%_binary_filedigest_algorithm HASHALGO
الخوارزمية
المستخدمة
لتوليد
مجاميع
التحقق
(وتعرف
أيضًا
بالملخصات)
لكل ملف
للحزم
الثنائية.
طالع
rpm-config(5)
للقيم
المدعومة.
%_binary_payload IOFLAGS
%_buildhost HOSTNAME
استخدم
HOSTNAME كمضيف
بناء
الحزمة
بدلاً من
الحصول على
القيمة من
gethostname(2).
%_buildtime TIMESTAMP
استخدم
TIMESTAMP كوقت
بناء
الحزمة
بدلًا من
الحصول على
القيمة من
time(2).
%_changelog_trimage TIMESTAMP
الحد
الأقصى
لعمر
مدخلات سجل
التغييرات
المحفوظة
في الحزم
الثنائية،
بالنسبة
لأحدث
مدخلة
موجودة.
تنسيق
الطابع
الزمني
يونكس.
القيمة صفر
تُعطل
التشذيب
حسب العمر.
%_changelog_trimtime TIMESTAMP
استراتيجية
بديلة
لتشذيب سجل
التغييرات:
تشذيب جميع
مدخلات سجل
التغييرات
الأقدم من
الطابع
الزمني
المُحدد.
تنسيق
الطابع
الزمني
يونكس.
القيمة صفر
تُعطل
التشذيب
حسب الوقت.
%_docdir_fmt TEMPLATE
قالب
لاسم دليل
التوثيق
الخاص بكل
حزمة، أي
الملفات
المُحزّمة
بـ %doc.
%__docdir_path PATH
قائمة
مفصولة
بنقطتين
رأسيتين
للأدلة
التي يجب
اعتبار
محتوياتها
دومًا
توثيقًا.
%_openpgp_autosign_id KEYID
مُعرّف
مفتاح OpenPGP أو
البصمة
المستخدمة
لتوقيع
الحزم
آليًا بعد
نجاح
البناء.
راجع أيضًا
rpmsign(1).
%_rpmformat VERSION
تنسيق
حزمة RPM
المراد
إنتاجه.
القيم
المدعومة
هي:
- 4: تنسيق RPM v4
- 6: تنسيق RPM v6
%_source_filedigest_algorithm HASHALGO
الخوارزمية
المستخدمة
لتوليد
مجاميع فحص
(تُعرف
أيضًا
بالخلاصات)
كل ملف لحزم
المصدر.
راجع
rpm-config(5)
لمعرفة
القيم
المدعومة.
%_source_payload
%__gpg_reserved_space NUMBER
عدد
البايتات
المحجوزة
للتوقيعات
في ترويسة
التوقيع.
هذا الحجز
يساعد في
تسريع
توقيع
الحزمة
بشكل
ملحوظ.
توليد معلومات التنقيح¶
تحتوي
الحزم
الفرعية
لمعلومات
التنقيح (Debuginfo)
على
المعلومات
الضرورية
لتنقيح
بناءات
مواصفات
الإصدار
باستخدام
منقح. تحدد
هذه
الإعدادات
ما إذا كانت
حزم
معلومات
التنقيح
ستُولد
وجوانب
متنوعة من
معلومات
التنقيح
المولدة.
%_build_id_links MODE
تحدد
كيفية وما
إذا كانت
روابط build_id
ستُولد
لملفات ELF.
الإعدادات
التالية
مدعومة:
- none: لا تُولد
أي روابط build_id.
- alldebug: توليد
روابط build_id
بنمط rpm أقل
من 4.14، أي كل
شيء في حزمة
-debuginfo.
- separate: توليد
روابط build_id في
الحزم
الثنائية.
- compat: نفس separate
ولكن مع
رابط
(روابط)
توافقية في
حزم -debuginfo.
%_debuginfo_subpackages BOOLEAN
ما إذا
كان يجب على rpm
إنشاء حزم debuginfo
منفصلة لكل
حزمة
فرعية.
%_debugsource_packages BOOLEAN
ما إذا
كان يجب على rpm
وضع ملفات
مصدر
التنقيح في
حزمتها
الفرعية
الخاصة.
%_enable_debug_packages BOOLEAN
ما إذا
كان يجب على rpm
توليد حزم
فرعية
لمعلومات
التنقيح.
%_include_gdb_index BOOLEAN
تضمين
قسم .gdb_index في
ملفات .debug.
يتطلب
تفعيل
%_enable_debug_packages
وتثبيت
gdb-add-index(1).
%_include_minidebuginfo BOOLEAN
تضمين حد
أدنى من
معلومات
التنقيح في
ثنائيات
البناء.
يتطلب
تفعيل %_enable_debug_packages.
%_no_recompute_build_ids BOOLEAN
تعطيل
إعادة حساب
مُعرّفات
البناء (build-ids). لا
يمكن
استخدامه
مع %_unique_build_ids.
%_unique_build_ids BOOLEAN
ما إذا
كان يجب جعل
مُعرّفات
البناء
فريدة بين
إصدارات/نسخ
الحزمة عند
توليد حزم
debuginfo.
%_unique_debug_names BOOLEAN
ما إذا
كان يجب جعل
ملفات .debug
فريدة بين
إصدار
الحزمة
ونسختها
وبنيتها.
يتطلب
تفعيل %_unique_build_ids.
%_unique_debug_srcs BOOLEAN
ما إذا
كانت أدلة
/usr/debug/src/<package> يجب أن
تكون فريدة
بين إصدار
الحزمة
ونسختها
وبنيتها.
%__find_debuginfo EXECUTABLE
موقع
الملف
التنفيذي
المساعد لـ
debuginfo.
التوافقية مع الأنظمة القديمة¶
تتعامل
هذه
الإعدادات
مع عقود
عديدة من
التوافقية
مع
الإصدارات
السابقة.
معظمها
يحدد ما إذا
كانت مسألة
معينة
تُعتبر
خطأً أم
مجرد تحذير.
تكون مفيدة
أحيانًا
للالتفاف
المؤقت حول
المشكلات
أثناء
الحزم.
%_binaries_in_noarch_packages_terminate_build
BOOLEAN
ما إذا
كان يجب على
ثنائيات ELF في
حزم noarch إنهاء
عملية
البناء.
%_duplicate_files_terminate_build BOOLEAN
ما إذا
كان يجب على
الملفات
المكررة في
قسم %files
إنهاء
عملية
البناء.
%_empty_manifest_terminate_build BOOLEAN
ما إذا
كان يجب على
ملف manifest فارغ
لـ %files إنهاء
عملية
البناء.
%_invalid_encoding_terminates_build BOOLEAN
ما إذا
كان يجب على
ترميز غير UTF8
في بيانات
الحزمة
إنهاء
عملية
البناء.
%__find_provides EXECUTABLE
الملف
التنفيذي
المستخدم
لتوليد
الموفرات
بنمط rpm 3.x. لا
تستخدمه.
مهجور
ومُجدول
للإزالة.
%__find_requires EXECUTABLE
الملف
التنفيذي
المستخدم
لتوليد
المتطلبات
بنمط rpm 3.x. لا
تستخدمه.
مهجور
ومُجدول
للإزالة.
%_missing_build_ids_terminate_build BOOLEAN
ما إذا
كان يجب على
ملفات ELF التي
لا تحتوي
على build-ids إنهاء
عملية
البناء.
لأسباب
تاريخية،
هذا قابل
للتطبيق
فقط إذا كان
%_enable_debug_packages
مفعلًا
أيضًا.
%_missing_doc_files_terminate_build BOOLEAN
ما إذا
كان يجب على
ملفات %doc
المفقودة
في دليل
البناء
إنهاء
عملية
البناء.
%_unpackaged_files_terminate_build BOOLEAN
ما إذا
كان يجب على
الملفات
غير
المُحزّمة
في جذر
البناء
إنهاء
عملية
البناء.
%_nonzero_exit_pkgcheck_terminate_build BOOLEAN
هل يجب
أن تفشل
عملية بناء
الحزم إذا
أرجع فاحص
الحزم (إذا
عُرِّف)
خطأً؟ راجع
ماكروات
%_build_pkgcheck_*.
%_use_internal_dependency_generator BOOLEAN
إذا
فُعِّل،
استخدم
توليد
الاعتماديات
بنمط rpm 3.x. لا
تستخدمه.
مهجور
ومُجدول
للإزالة.
%_use_weak_usergroup_deps BOOLEAN
إذا
فُعِّل،
خفف
متطلبات user() و
group() إلى
توصيات.
مفيد عند
الانتقال
إلى إدارة
المستخدم/المجموعة
المستندة
إلى sysusers.d.
%_wrong_version_format_terminate_build BOOLEAN
ما إذا
كان يجب على
تنسيق
الإصدار
غير الصالح
في
الاعتماديات
وما إلى ذلك
إنهاء
عملية
البناء.