| LCOVRC(5) | LCOV | LCOVRC(5) |
نام (NAME)
lcovrc - پرونده پیکربندی برای ابزارهای LCOV حاوی گزینهها و تنظیمات پیشفرض
- Manual section
- 5
- Manual group
- LCOV Configuration
نام (NAME)
- lcovrc
- پرونده پیکربندی ابزارهای LCOV شامل گزینهها و تنظیمات پیشفرض.
توضیحات (DESCRIPTION)
پرونده lcovrc حاوی اطلاعات پیکربندی برای ابزار پوشش کد lcov است (به lcov(1) مراجعه کنید).
پرونده پیکربندی سراسری سیستم در $|TOOL_NAME|_HOME/etc/lcovrc قرار دارد. این مسیر معمولاً /etc/lcovrc یا /usr/local/etc/lcovrc است، اما میتواند در هر جایی که بسته lcov را نصب کردهاید باشد. برای تغییر تنظیمات برای یک کاربر خاص، یک نسخه سفارشی از این پرونده را در مکان ~/.lcovrc قرار دهید. در صورت وجود، گزینههای خط فرمان بر تنظیمات پرونده پیکربندی اولویت دارند.
دستورهای genhtml، lcov و geninfo همچنین از گزینه --config-file پشتیبانی میکنند که میتواند برای مشخص کردن یک یا چند پرونده که باید بهجای پروندههای rc پیشفرض سیستم یا کاربر استفاده شوند، به کار رود. در صورتی که گزینههای مشترک خاص پروژه و خاص تیم دارید و میخواهید یکپارچگی میان چند کاربر را تضمین کنید، استفاده از چندین پرونده گزینهها میتواند مفید باشد. اگر چندین گزینه --config-file مشخص شود، به ترتیبی که ظاهر میشوند اعمال خواهند شد. توجه داشته باشید که نام گزینه «--config-file» باید به طور کامل مشخص شود و نمیتوان آن را مخفف کرد. در صورتی که گزینه شناسایی نشود، خطا رخ خواهد داد.
سطرها در یک پرونده پیکربندی میتوانند یکی از موارد زیر باشند:
- سطرهای خالی یا سطرهایی که فقط از نویسههای فاصله خالی تشکیل شدهاند. این سطرها نادیده گرفته میشوند.
- سطرهای توضیحات که با علامت هش («#») شروع میشوند. با این سطرها مانند سطرهای خالی رفتار میشود و نادیده گرفته خواهند شد.
- دستورهایی به فرم «key = value».
- مقادیر
میتوانند
از طریق
ساختار «key = …
$ENV{ENV_VAR_NAME} …» از
متغیرهای
محیطی
گرفته شوند.
زیررشته «$ENV{ENV_VAR_NAME}» با مقدار متغیر محیطی جایگزین میشود.
یک یا چند متغیر محیطی میتوانند برای تنظیم مقدار RC استفاده شوند. اگر هر یک از متغیرهای محیطی در محیط کاربری شما تنظیم نشده باشد، «key» نادیده گرفته میشود.
فهرستی از دستورهای معتبر و توضیحات آنها را میتوانید در بخش «گزینهها (OPTIONS)» در زیر بیابید.
توجه داشته باشید که هیچ بررسی خطایی روی کلیدها در پرونده گزینهها انجام نمیشود: خطاهای املایی صرفاً به عنوان مقادیری در نظر گرفته میشوند که توسط ابزار خاصی استفاده نشدهاند. اگر مطمئن نیستید که پرونده گزینههای شما خوانده شده یا مقادیر آن اعمال شده است، میتوانید از فلگ --verbose --verbose برای فعال کردن چاپ بازنویسیهای مقادیر گزینه استفاده کنید. (این گزینه دو بار آورده میشود تا سطح بالاتری از جزئیات فعال گردد.)
هر دو نوع گزینههای «فهرستی» (list) و «اسکالر» (غیر فهرستی / scalar) در پرونده lcovrc پشتیبانی میشوند.
برای گزینههای اسکالر (غیر فهرستی):
- اگر هم در خط فرمان و هم در پرونده lcovrc مشخص شوند، مقداری که در خط فرمان تعیین شده برنده میشود. مقدار موجود در پرونده RC نادیده گرفته میشود.
- گزینههای اسکالر عبارتند از: «criteria_script = …»، «genhtml_annotate_script = …»، «version_script = …» و غیره.
برای گزینههای فهرستی:
- •
- مدخل پرونده RC میتواند چندین بار استفاده شود؛ هر استفاده به انتهای فهرست اضافه میشود. به عنوان مثال، مدخل زیر منجر به دو الگوی «omit» میشود که هر دو بررسی خواهند شد:
# note explicit start/end line markers in the regexp omit_lines = ^\\s+//\\s*MY_EXCLUDE_MARKER\\s*$ # Note that the regexp below matches anywhere on the line omit_lines = NR_CM_DBG_PRINT
- اگر مدخلها در خط فرمان مشخص شوند، مدخلهای پرونده RC نادیده گرفته میشوند: خط فرمان اولویت دارد. اگر مدخلها در بیش از یک پرونده RC مشخص شوند (یعنی چندین آرگومان --config-file ارائه شود)، پروندههای RC به ترتیب حضور اعمال میشوند و مدخلهای فهرست به ترتیب اضافه میگردند. برای بیشتر گزینههای نوع فهرستی، ترتیب اهمیتی ندارد.
- گزینههای فهرستی عبارتند از:
filter = ... exclude = ... ignore = ... substitute = ... omit_lines = ... erase_functions = ... genhtml_annotate_script = ...
و غیره. برای مجموعه کامل گزینههای فهرستی، مستندات مربوط به هر گزینه پیکربندی را در زیر مشاهده کنید.
نمونه پیکربندی:
توجه داشته باشید که این مثال شامل تمام گزینههای پیکربندی ممکن نیست. بهطور کلی: (تقریباً) تمام گزینههای خط فرمان را میتوان در پرونده پیکربندی مشخص کرد، در حالی که برخی از گزینههای پرونده پیکربندی هیچ معادل خط فرمانی ندارند.
برای جزئیات بیشتر به بخش گزینهها (OPTIONS) در زیر مراجعه کنید.
#
# پرونده پیکربندی نمونه |ToolName|
#
# درج یک پرونده پیکربندی دیگر
# به عنوان مثال گزینههای مخصوص کاربر. به بسط متغیر محیطی توجه کنید
# config_file = $ENV{HOME}/.user_lcovrc
# یا مخصوص پروژه - مقدار ثابت از متغیر محیطی
# config_file = /path/to/myproject/.lcovrc
# یا در دایرکتوری اجرای فعلی
# config_file = $ENV{PWD}/.lcovrc
# پرونده شیوهنامه خارجی (CSS)
#genhtml_css_file = gcov.css
# استفاده از حالت نمایش تیره ('dark') (پیشزمینه روشن/پسزمینه تیره)
# به جای حالت پیشفرض
#genhtml_dark_mode = 1
# متن سربرگ جایگزین برای استفاده در بالای هر صفحه
#genhtml_header = Coverage report for my project
# متن پاورقی جایگزین برای استفاده در پایین هر صفحه
#genhtml_footer = My footer text
# محدودیتهای درصد پوشش
genhtml_hi_limit = 90
genhtml_med_limit = 75
# نادیده گرفتن برخی خطاها (فهرست جداشده با کاما)
#ignore_errors = empty,mismatch
# متوقف کردن انتشار پیام پس از چاپ این تعداد
# 0 == بدون محدودیت
max_message_count = 100
# در صورت غیرصفر بودن، هنگام وقوع «خطای قابل چشمپوشی» متوقف نشود - تلاش میکند
# حتی با وجود نقص نتیجه را تولید کند. این معادل
# سوییچ خط فرمان «--keep-going» است.
# پیشفرض 1 است: هنگام وقوع خطا متوقف شود
#stop_on_error = 1
# در صورت غیرصفر بودن، با هشدارها مانند خطا برخورد شود
# توجه داشته باشید که پیامهای نادیدهگرفتهشده همچنان به صورت هشدار ظاهر میشوند
# پیشفرض 0 است
#treat_warning_as_error = 1
# در صورت تنظیم روی مقدار غیرصفر، هشدار خاص فقط یکبار در هر پرونده صادر شود
# پیشفرض 1 است
#warn_once_per_file = 1
# پسوند مرتبط با پروندههای ردگیری lcov - الگوی تطبیق سراسری (glob)
# که به عنوان آرگومان به «find» ارسال میشود - برای یافتن پروندههای پوشش در
# یک آرگومان دایرکتوری
#info_file_pattern = *.info
# فهرست پسوندهای پرونده که باید به عنوان کد C/C++ در نظر گرفته شوند
# (فهرست جداشده با کاما)
#c_file_extensions = h,c,cpp,hpp
# فهرست پسوندهای پرونده که باید به عنوان کد RTL در نظر گرفته شوند
# (*مثلاً* Verilog) (فهرست جداشده با کاما)
#rtl_file_extensions = v,vh,sv
# فهرست پسوندهای پرونده که باید به عنوان کد جاوا در نظر گرفته شوند
#java_file_extensions = java
# فهرست پسوندهای پرونده که باید به عنوان کد پرل در نظر گرفته شوند
#perl_file_extensions = pl,pm
# فهرست پسوندهای پرونده که باید به عنوان کد پایتون در نظر گرفته شوند
#python_file_extensions = py
# حداکثر تعداد خطوطی که هنگام فیلتر کردن عبارات شاخه جعلی بررسی میشوند
#filter_lookahead = 5
# در صورت غیرصفر بودن، عملگرهای بیتی '|'، '&'، '~' نشاندهنده عبارات شرطی هستند
#filter_bitwise_conditional = 1
# در صورت غیرصفر بودن، «--filter blank» بدون در نظر گرفتن تعداد دفعات اجرا،
# روی خطوط خالی اعمال میشود
#filter_blank_aggressive = 1
# عرض فیلد پوشش خط در نمای کد مبدا
genhtml_line_field_width = 12
# عرض فیلد پوشش شاخه در نمای کد مبدا
genhtml_branch_field_width = 16
# عرض فیلد پوشش MC/DC در نمای کد مبدا
genhtml_mcdc_field_width = 14
# عرض فیلد «مالک» (owner) در نمای کد مبدا - پیشفرض 20 است
genhtml_owner_field_width = 20
# عرض فیلد «عمر» (age) در نمای کد مبدا - پیشفرض 5 است
genhtml_age_field_width = 5
# عرض تصویر نمای کلی (overview)
genhtml_overview_width = 80
# دقت پیمایش نمای کلی
genhtml_nav_resolution = 4
# آفست برای پیمایش کد مبدا
genhtml_nav_offset = 10
# در صورت غیرصفر بودن، توضیحات استفادهنشده آزمون حذف نشوند
genhtml_keep_descriptions = 0
# در صورت غیرصفر بودن، پیشوند نام دایرکتوریها حذف نشود
genhtml_no_prefix = 0
# در صورت غیرصفر بودن، نمای کد مبدا ایجاد نشود
genhtml_no_source = 0
# تعیین اندازه تبها
genhtml_num_spaces = 8
# در صورت غیرصفر بودن، راهنمای رنگها در خروجی HTML گنجانده شود
genhtml_legend = 0
# گنجاندن پرونده HTML در ابتدای خروجی HTML
#genhtml_html_prolog = prolog.html
# گنجاندن پرونده HTML در انتهای خروجی HTML
#genhtml_html_epilog = epilog.html
# استفاده از پسوند پرونده HTML سفارشی
#genhtml_html_extension = html
# فشردهسازی تمام پروندههای html تولیدشده با gzip.
#genhtml_html_gzip = 1
# گنجاندن صفحات نمای کلی مرتبشده
genhtml_sort = 1
# نمایش دادههای پوشش در ساختار دایرکتوری سلسهمراتبی
# (به جای تخت/۳ سطحی)
#genhtml_hierarchical = 1
# نمایش دادههای پوشش با استفاده از نمای «تخت» (flat)
#genhtml_flat_view = 1
# تعیین مجموعه نویسههای تمام صفحات HTML تولیدشده
genhtml_charset=UTF-8
# در صورت غیرصفر بودن، نشانهگذاری HTML در متن توضیحات مورد آزمون مجاز باشد
genhtml_desc_html=0
# تعیین دقت برای نرخهای پوشش
#genhtml_precision=1
# نمایش تعداد موارد از دست رفته به جای تعداد دفعات اجرا
#genhtml_missed=1
# گروهبندی نامهای مستعار تابع در گزارش - بخش «--merge» را در man(1) genhtml ببینید
#merge_function_aliases = 1
# در صورت تنظیم، سرکوب فهرست نامهای مستعار در جدول جزئیات تابع
#suppress_function_aliases = 1
# در صورت تنظیم، استخراج خط پایانی تابع از دادههای نقاط پوشش خط - پیشفرض روشن است
#derive_function_end_line = 1
# در صورت تنظیم، استخراج خطوط پایانی توابع برای همه انواع پروندهها.
# بهطور پیشفرض، ما خطوط پایانی را فقط برای پروندههای C/C++ استخراج میکنیم
#
#derive_end_line_all_files = 0
# حداکثر اندازه تابع (تعداد خطوط) که توسط «--filter trivial» بررسی میشود
#trivial_function_threshold = 5
# تعیین آستانه برای تعداد دفعات اجرا که ابزار باید آن را به عنوان باگ زنجیره ابزار در نظر بگیرد
# (دادههای پوشش خراب)
# excessive_count_threshold = number
# برگرداندن نامهای تغییریافته نمادهای C++ (Demangle)
# برای تعیین دستور و آرگومانهای خط فرمان چندین بار فراخوانی شود
# (رفتاری شبیه به '-Xlinker')
#demangle_cpp = c++filt
# مکان ابزار gcov
#geninfo_gcov_tool = gcov
# در صورت غیرصفر بودن، تنظیم نامهای آزمون
#geninfo_adjust_testname = 0
# نادیده گرفتن نامهای مورد آزمون در پرونده .info
forget_testcase_names = 0
# محاسبه و/یا تولید چکسام برای هر خط در صورت غیرصفر بودن
checksum = 0
# در صورت غیرصفر بودن، فعالسازی حالت سازگاری با libtool
geninfo_compat_libtool = 0
# تعیین اینکه آیا دادههای پوشش برای پروندههای مبدا خارجی
# ثبت شود یا خیر
#geninfo_external = 1
# تعیین اینکه آیا دادههای پوشش از پروندههای زمان کامپایل که
# دادههای زمان اجرای متناظر ندارند، ثبت شود یا خیر.
#geninfo_capture_all = 1
# در صورت غیرصفر بودن، استفاده از گزینه --all-blocks ابزار gcov
#geninfo_gcov_all_blocks = 1
# تنظیم تعداد دفعات اجرای غیرصفر «اجرا شده» برای خطوطی که فاقد شاخه هستند
# و دارای ویژگی 'unexecuted_blocks: true' میباشند
#geninfo_unexecuted_blocks = 0
# تعیین حالتهای سازگاری (همانند گزینه \-\-compat در
# geninfo)
#geninfo_compat = libtool=on, hammer=auto, split_crc=auto
# تعیین اینکه آیا geninfo باید هنگام جمعآوری دادههای پوشش، دایرکتوری پایه را
# بهطور خودکار تعیین کند یا خیر.
geninfo_auto_base = 1
# استفاده از قالب میانی gcov؟ مقادیر معتبر 0، 1 و auto هستند
geninfo_intermediate = auto
# تعیین اینکه آیا شاخههای استثنا (exception) باید از پوشش شاخه حذف شوند یا خیر.
no_exception_branch = 0
# دایرکتوری حاوی پروندههای هسته gcov
lcov_gcov_dir = /proc/gcov
# مکان برای دایرکتوریهای موقت
lcov_tmp_dir = /tmp
# نمایش مسیرهای کامل در حین عملیات فهرستبندی در صورت غیرصفر بودن
lcov_list_full_path = 0
# تعیین حداکثر عرض برای خروجی فهرست. این مقدار زمانی که
# lcov_list_full_path غیرصفر باشد نادیده گرفته میشود.
lcov_list_width = 80
# تعیین حداکثر درصد نام پروندههایی که ممکن است هنگام
# انتخاب پیشوند دایرکتوری در خروجی فهرست کوتاه شوند.
# این مقدار زمانی که lcov_list_full_path غیرصفر باشد نادیده گرفته میشود.
lcov_list_truncate_max = 20
# تعیین اینکه آیا دادههای پوشش توابع باید جمعآوری، پردازش و
# نمایش داده شوند یا خیر.
function_coverage = 1
# تعیین اینکه آیا دادههای پوشش شاخهها باید جمعآوری، پردازش و
# نمایش داده شوند یا خیر.
branch_coverage = 0
# تعیین اینکه آیا دادههای پوشش شرایط اصلاحشده / تصمیم (MC/DC) باید
# جمعآوری، پردازش و نمایش داده شوند یا خیر.
mcdc_coverage = 0
# درخواست از lcov/genhtml/geninfo برای بازگرداندن کد خروج غیرصفر در صورتی که پوشش شاخه
# کمتر از درصد آستانه مشخصشده باشد.
fail_under_branches = 75.0
# درخواست از lcov/genhtml/geninfo برای بازگرداندن کد خروج غیرصفر در صورتی که پوشش خط
# کمتر از درصد آستانه مشخصشده باشد.
#fail_under_lines = 97.5
# تعیین ماژول JSON برای استفاده، یا انتخاب بهترین گزینه موجود در صورت
# تنظیم روی auto
lcov_json_module = auto
# تعیین حداکثر تعداد پردازشهای موازی فرعی (slave)
# پیشفرض: 1 (بدون موازیسازی)
#parallel = 1
# تعیین حداکثر حافظه برای استفاده در حین پردازش موازی، به مگابایت.
# اگر مصرف حافظه تخمینی از این مقدار فراتر رود، fork نکنید.
# پیشفرض: 0 (بدون محدودیت)
#memory = 1024
# تعیین تعداد شکستهای متوالی در fork() قبل از
# صرفنظر کردن
# max_fork_fails = 5
# ثانیههای انتظار پس از شکست در fork() قبل از تلاش مجدد
# fork_fail_timeout = 10
# کنترل کنترل جریان (Throttling): تعیین درصدی از حافظه سیستم برای استفاده به عنوان
# حداکثر در حین پردازش موازی.
# اگر مصرف حافظه تخمینی از حداکثر فراتر رود، fork نکنید.
# این مقدار تنها در صورتی استفاده میشود که حداکثر حافظه تنظیم نشده باشد.
# پیشفرض: تنظیم نشده
#memory_percentage = 75
# نویسه مورداستفاده برای جداسازی پارامترهای نوع فهرستی
# - به عنوان مثال، فهرست '"--ignore_errors source,mismatch"'
# پیشفرض: , (کاما)
#split_char = ,
# استفاده از مقایسه بدون حساسیت به حروف کوچک و بزرگ برای یافتن پروندههای منطبق، برای دستورالعملهای include/exclude
# و غیره
#case_insensitive = 0
# بازنویسی عبارت منظم پیشفرض حذف خط
#lcov_excl_line = LCOV_EXCL_LINE
# بازنویسی عبارت منظم حذف شاخه
#lcov_excl_br_line = LCOV_EXCL_BR_LINE
# بازنویسی عبارت منظم حذف شاخه استثنا
#lcov_excl_exception_br_line = LCOV_EXCL_EXCEPTION_BR_LINE
# بازنویسی عبارت منظم شروع ناحیه حذف
#lcov_excl_start = LCOV_EXCL_START
# بازنویسی عبارت منظم پایان ناحیه حذف
#lcov_excl_stop = LCOV_EXCL_STOP
# بازنویسی عبارت منظم پیشفرض حذف خطوط غیرقابل دسترس
#lcov_unreachable_line = LCOV_UNREACHABLE_LINE
# بازنویسی عبارت منظم شروع ناحیه غیرقابل دسترس
#lcov_unreachable_start = LCOV_UNREACHABLE_START
# بازنویسی عبارت منظم پایان ناحیه غیرقابل دسترس
#lcov_unreachable_stop = LCOV_UNREACHABLE_STOP
# بازنویسی عبارت منظم شروع ناحیه حذف شاخه
#lcov_excl_br_start = LCOV_EXCL_BR_START
# بازنویسی عبارت منظم پایان ناحیه حذف شاخه
#lcov_excl_br_stop = LCOV_EXCL_BR_STOP
# بازنویسی عبارت منظم شروع ناحیه حذف استثنا
#lcov_excl_exception_br_start = LCOV_EXCL_EXCEPTION_BR_START
# بازنویسی عبارت منظم پایان ناحیه حذف استثنا
#lcov_excl_exception_br_stop = LCOV_EXCL_EXCEPTION_BR_STOP
گزینهها (OPTIONS)
CONFIG_FILE = FILENAME
گنجاندن یک پرونده پیکربندی دیگر.
گنجاندن معادل درج متن از filename در این نقطه از پرونده فعلی است. در نتیجه، تنظیمات پرونده گنجاندهشده پس از تنظیمات قبلی پرونده فعلی، اما قبل از تنظیمات بعدی پرونده فعلی پردازش میشوند. در نتیجه:
گزینههای اسکالر که قبلاً در پرونده فعلی تنظیم شدهاند، توسط تنظیمات پرونده گنجاندهشده بازنویسی میشوند و گزینههای اسکالر پرونده گنجاندهشده توسط تنظیمات بعدی در پرونده فعلی بازنویسی خواهند شد.
گزینههای آرایهای از سطور قبلی در پرونده فعلی قبل از تنظیمات پرونده گنجاندهشده ظاهر میشوند و گزینههای آرایهای از سطور بعدی پرونده فعلی پس از آن قرار میگیرند.
گنجاندن پرونده پیکربندی بهصورت بازگشتی است: یک پرونده پیکربندی گنجاندهشده ممکن است پرونده دیگری را بگنجاند - و به همین ترتیب. حلقههای گنجاندن پشتیبانی نمیشوند و منجر به خطای نحوه استفاده (usage) خواهند شد.
رایجترین کاربرد گنجاندن پرونده پیکربندی این است که یک پرونده گزینههای سراسری سیستم یا سراسری پروژه بتواند یک پرونده گزینههای خاص کاربر یا خاص ماژول را بگنجاند - برای مثال، مانند:
...
config_file = $ENV{HOME}/.lcovrc_user
...
GENHTML_CSS_FILE = FILENAME
مشخص کردن یک پرونده شیوهنامه (CSS) خارجی. از این گزینه برای تغییر ظاهر خروجی HTML تولیدشده توسط genhtml استفاده کنید. در حین تولید خروجی، یک نسخه از این پرونده در دایرکتوری خروجی قرار داده میشود.
این گزینه متناظر با گزینه خط فرمان --css-file دستور genhtml است.
بهطور پیشفرض، یک پرونده CSS استاندارد تولید میشود.
GENHTML_HEADER = STRING
مشخص کردن متن سربرگ برای استفاده در بالای هر صفحه HTML.
این گزینه متناظر با گزینه خط فرمان --header-title دستور genhtml است.
پیشفرض «LCOV - (differential )? coverage report» است.
GENHTML_FOOTER = STRING
مشخص کردن متن پاورقی برای استفاده در پایین هر صفحه HTML.
این گزینه متناظر با گزینه خط فرمان --footer دستور genhtml است.
پیشفرض رشته نسخه ابزار LCOV است.
GENHTML_DARK_MODE = 0 | 1
در صورت غیرصفر بودن، به جای متن تیره روی پسزمینه روشن، با استفاده از متن روشن روی پسزمینه تیره نمایش داده میشود.
این گزینه متناظر با گزینه خط فرمان --dark-mode دستور genhtml است.
بهطور پیشفرض، یک پالت «روشن» (light) استفاده میشود.
genhtml_hi_limit = hi_limit genhtml_med_limit = med_limit ———————————–
مشخص کردن محدودیتهای نرخ پوشش برای طبقهبندی مدخلهای پرونده. از این گزینه برای تغییر نرخهای پوشش (به درصد) برای پوشش خط، تابع و شاخه استفاده کنید که در آن یک نتیجه به عنوان پوشش بالا، متوسط یا پایین طبقهبندی میشود. این طبقهبندی بر رنگ مدخلهای متناظر در صفحات نمای کلی خروجی HTML تأثیر میگذارد:
High: hi_limit <= rate <= 100 default color: green Medium: med_limit <= rate < hi_limit default color: yellow Low: 0 <= rate < med_limit default color: red
مقادیر پیشفرض ۹۰ و ۷۵ درصد هستند.
همچنین گزینههایی برای پیکربندی آستانههای مختلف برای پوششهای خط، شاخه و تابع وجود دارد. زیر را ببینید.
genhtml_line_hi_limit = line_hi_limit genhtml_line_med_limit = line_med_limit ———————————————-
مشخص کردن آستانه خاص برای محدودیتهای پوشش خط که برای تصمیمگیری در مورد اینکه آیا یک درصد پوشش خط خاص به عنوان پوشش بالا، متوسط یا پایین طبقهبندی میشود، استفاده میشود. اگر مقادیر خاص خط مشخص نشده باشند، مقادیر پیشفرض genhtml_med_limit یا genhtml_hi_limit استفاده میشوند.
genhtml_branch_hi_limit = branch_hi_limit genhtml_branch_med_limit = branch_med_limit ———————————————–
مشخص کردن آستانه خاص برای محدودیتهای پوشش شاخه که برای تصمیمگیری در مورد اینکه آیا یک درصد پوشش شاخه خاص به عنوان پوشش بالا، متوسط یا پایین طبقهبندی میشود، استفاده میشود. اگر مقادیر خاص شاخه مشخص نشده باشند، مقادیر پیشفرض genhtml_med_limit یا genhtml_hi_limit استفاده میشوند.
genhtml_function_hi_limit = function_hi_limit genhtml_function_med_limit = function_med_limit ——————————————————
مشخص کردن آستانه خاص برای محدودیتهای پوشش تابع که برای تصمیمگیری در مورد اینکه آیا یک درصد پوشش تابع خاص به عنوان پوشش بالا، متوسط یا پایین طبقهبندی میشود، استفاده میشود. اگر مقادیر خاص تابع مشخص نشده باشند، مقدار پیشفرض genhtml_med_limit یا genhtml_hi_limit استفاده میشود.
RTL_FILE_EXTENSIONS = STR[,STR]+
یک فهرست جداشده با کاما از پسوندهای فایلی را مشخص میکند که باید به عنوان کد RTL (مانند Verilog) در نظر گرفته شوند.
در صورت عدم تعیین، مجموعه پیشفرض ‘v,vh,sv,vhdl?’ است. معادل خط فرمانی برای این گزینه وجود ندارد.
این گزینه توسط genhtml و lcov استفاده میشود.
INFO_FILE_PATTERN = STR
الگوی تطبیق سراسری (glob-match) مرتبط با فایلهای ردگیری lcov را مشخص میکند (مناسب به عنوان یک آرگومان برای ‘find’). در صورت عدم تعیین، مقدار پیشفرض ‘*.info’ است.
C_FILE_EXTENSIONS = STR[,STR]+
یک فهرست جداشده با کاما از پسوندهای فایلی را مشخص میکند که باید به عنوان کد C/C++ در نظر گرفته شوند.
در صورت عدم تعیین، مجموعه پیشفرض ‘c,h,i,C,H,I,icc,cpp,cc,cxx,hh,hpp,hxx’ است. اگر میخواهید تمام فایلها به عنوان کد C/C++ تلقی شوند، میتوانید از دستور c_file_extensions = .* استفاده کنید.
این پارامتر باید از طریق فایل lcovrc یا گزینه خط فرمان --rc name=value تنظیم شود؛ توجه داشته باشید که در حالت دوم ممکن است نیاز باشد مقدار را از گسترش پوسته محافظت کنید.
JAVA_FILE_EXTENSIONS = STR[,STR]+
یک فهرست جداشده با کاما از پسوندهای فایلی را مشخص میکند که باید به عنوان کد جاوا (Java) در نظر گرفته شوند.
در صورت عدم تعیین، مجموعه پیشفرض ‘java’ است. اگر میخواهید تمام فایلها به عنوان کد جاوا در نظر گرفته شوند، میتوانید از java_file_extensions = .* استفاده کنید.
این پارامتر باید از طریق فایل lcovrc یا گزینه خط فرمان --rc name=value تنظیم شود؛ توجه داشته باشید که در حالت دوم ممکن است نیاز باشد مقدار را از گسترش پوسته محافظت کنید.
PERL_FILE_EXTENSIONS = STR[,STR]+
یک فهرست جداشده با کاما از پسوندهای فایلی را مشخص میکند که باید به عنوان کد پرل (Perl) در نظر گرفته شوند.
در صورت عدم تعیین، مجموعه پیشفرض ‘pl,pm’ است. اگر میخواهید تمام فایلها به عنوان کد پرل در نظر گرفته شوند، میتوانید از perl_file_extensions = .* استفاده کنید.
این پارامتر باید از طریق فایل lcovrc یا گزینه خط فرمان --rc name=value تنظیم شود؛ توجه داشته باشید که در حالت دوم ممکن است نیاز باشد مقدار را از گسترش پوسته محافظت کنید.
PYTHON_FILE_EXTENSIONS = STR[,STR]+
یک فهرست جداشده با کاما از پسوندهای فایلی را مشخص میکند که باید به عنوان کد پایتون (Python) در نظر گرفته شوند.
در صورت عدم تعیین، مجموعه پیشفرض ‘py’ است. اگر میخواهید تمام فایلها به عنوان کد پایتون در نظر گرفته شوند، میتوانید از python_file_extensions = .* استفاده کنید.
این پارامتر باید از طریق فایل lcovrc یا گزینه خط فرمان --rc name=value تنظیم شود؛ توجه داشته باشید که در حالت دوم ممکن است نیاز باشد مقدار را از گسترش پوسته محافظت کنید.
FILTER_LOOKAHEAD = INTEGER
حداکثر تعداد خطوطی را مشخص میکند که هنگام فیلتر کردن عبارات انشعابی جعلی (bogus) بررسی میشوند. عدد بزرگتر ممکن است موارد بیشتری را پیدا کند، اما زمان اجرا را افزایش میدهد.
در صورت عدم تعیین، مقدار پیشفرض 10 است. معادل خط فرمانی برای این گزینه وجود ندارد.
این گزینه توسط genhtml و lcov استفاده میشود.
FILTER_BITWISE_CONDITIONAL = 0|1
اگر روی مقداری غیر از صفر تنظیم شود، فیلتر انشعابات جعلی فرض میکند که عبارات حاوی عملگرهای بیتی ‘&’، ‘|’ و ‘~’ عبارات شرطی هستند و آنها را فیلتر نمیکند.
در صورت عدم تعیین، مقدار پیشفرض 0 است (آنها را شرطی در نظر نگیر). معادل خط فرمانی برای این گزینه وجود ندارد.
این گزینه توسط genhtml و lcov استفاده میشود.
FILTER_BLANK_AGGRESSIVE = 0|1
اگر روی مقداری غیر از صفر تنظیم شود، خطوط خالی سورسکد صرفنظر از اینکه تعداد «اصابت» (hit) آنها صفر است یا نه، نادیده گرفته میشوند. بخش --filter blank را در genhtml(1) <file://../man/genhtml.1.html> ببینید.
در صورت عدم تعیین، مقدار پیشفرض 0 است (خطوط خالی تنها در صورتی فیلتر میشوند که اجرا نشده باشند). معادل خط فرمانی برای این گزینه وجود ندارد.
IGNORE_ERRORS = MESSAGE_TYPE(,MESSAGE_TYPE)*
یک نوع پیام را مشخص میکند که باید نادیده گرفته شود.
این گزینه میتواند چندین بار در فایل lcovrc برای نادیده گرفتن چندین نوع پیام استفاده شود.
این گزینه معادل گزینه --ignore-errors در دستورات geninfo، genhtml یا lcov است. توجه داشته باشید در صورتی که گزینه خط فرمان ‘--ignore-errors’ مشخص شود، فهرست پیامهای فایل lcovrc اعمال نمیشود (آن پیامها نادیده گرفته نمیشوند).
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
IGNORE_UNREACHABLE_FLAG = 0 | 1
هنگام تجزیه فایل ردگیری، پرچمهای «غیرقابل دسترس» (unreachable) روی عبارات انشعابی و شرایط MC/DC نادیده گرفته میشوند؛ عملاً با آنها به صورت قابلدسترس رفتار خواهد شد.
توجه داشته باشید که ignore_unreachable_flag تنها هنگام خواندن یک فایل ردگیری استفاده میشود. این گزینه هیچ تاثیری بر پرچمهای غیرقابل دسترس تعیینشده توسط فراخوان unreachable_script شما ندارد. بخش unreachable_script را در ادامه ببینید.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
EXPECT_MESSAGE_COUNT = MESSAGE_TYPE:EXPR(,MESSAGE_TYPE:EXPR)*
قیدی را بر تعداد پیامهای یک یا چند نوع خاص که انتظار میرود در طول اجرای ابزار تولید شوند مشخص میکند. اگر این قید برقرار نباشد، خطایی از نوع count تولید خواهد شد.
چندین قید را میتوان با استفاده از یک فهرست جداشده با کاما یا با استفاده مکرر از این گزینه مشخص کرد.
پیش از ارزیابی عبارت، جایگزینیهایی روی آن انجام میشود:
برای مثال:
- expect_message_count = inconsistent : %C == 5
بیان میکند که شما دقیقاً انتظار ۵ پیام از این نوع را دارید
- expect_message_count inconsistent : %C > 6 && %C <=
10
بیان میکند که شما انتظار دارید تعداد پیامها در بازه (6:10] باشد.
این گزینه زمانی مفید است که خطاها ناشی از شرایطی باشند که نمیتوانید آنها را برطرف کنید؛ برای نمونه، به دلیل دادههای پوشش ناسازگار تولید شده توسط زنجیره ابزار شما. در این سناریوها، ممکن است تصمیم بگیرید:
- کد مشکلساز را مستثنی کنید، یا
- کل فایل(های) مشکلساز را کنار بگذارید، یا
- پیامها را نادیده بگیرید، خواه با تبدیل آنها به هشدار یا با سرکوب کامل آنها.
در حالت دوم، این گزینه با هشدار دادن به شما در صورت تغییر تعداد به دلیل تغییر رخداده، ایمنی بیشتری را فراهم میکند و فرصت عیبیابی تغییر و/یا بازبینی تغییرات پیام را به شما میدهد.
این گزینه معادل فلگ خط فرمان --expect-message-count است.
MAX_MESSAGE_COUNT = INTEGER
حداکثر تعداد هشدارهای هر نوع خاص را که باید ارسال شوند تنظیم میکند. از این مورد میتوان برای کاهش حجم فایلهای گزارش (log) استفاده کرد.
پس از رسیدن به این تعداد، هیچ هشدار دیگری چاپ نخواهد شد. 0 (صفر) به عنوان «بدون محدودیت» تفسیر میشود.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
MESSAGE_LOG = FILENAME
مسیری را برای ذخیره پیامهای خطا و هشدار (علاوه بر نوشتن در STDERR) مشخص میکند. در صورت عدم تعیین، از مسیر پیشفرض استفاده میشود.
این مشخصه معادل گزینه خط فرمان --msg-log است. اگر هر دو مشخص شوند، گزینه خط فرمان اولویت دارد.
STOP_ON_ERROR = 0|1
اگر روی 0 تنظیم شود، به ابزارها دستور میدهد خطاها را نادیده گرفته و به کار ادامه دهند تا نتیجهای تولید شود؛ هرچند آن نتیجه ممکن است ناقص یا دارای نقص باشد. توجه داشته باشید که برخی خطاها را نمیتوان نادیده گرفت و نادیده گرفتن برخی خطاها ممکن است منجر به خطاهای دیگر شود.
در صورتی که stop_on_error غیرفعال باشد، در صورت تشخیص یک یا چند خطا در حین اجرا، ابزار یک کد خروج غیرصفر برمیگرداند. یعنی ابزار با وجود خطاها به اجرای خود ادامه میدهد اما وضعیت خروج خطا برمیگرداند.
این گزینه معادل گزینه خط فرمان ‘--keep-going’ است.
مقدار پیشفرض 1 است: در صورت بروز خطا متوقف شو.
اگر از گزینه ‘ignore_error msgType’ نیز استفاده شود، با آن پیامها به جای خطا به عنوان هشدار رفتار خواهد شد (یا اگر نوع پیام چندین بار در گزینه ignore_messages آمده باشد، کاملاً سرکوب میشود). هشدارها باعث ایجاد وضعیت خروج غیرصفر نمیشوند.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
TREAT_WARNING_AS_ERROR = 0|1
اگر روی 1 تنظیم شود، به ابزارها اعلام میکند پیامهایی که به طور معمول به عنوان هشدار تلقی میشوند (مانند برخی پیامهای نحوه استفاده) باید به عنوان خطا در نظر گرفته شوند.
توجه داشته باشید که پیامهای نادیدهگرفتهشده همچنان به عنوان هشدار نمایش داده میشوند: ورودی ignore_errors در بالا را ببینید.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
WARN_ONCE_PER_FILE = 0|1
اگر روی 1 تنظیم شود، به ابزارها میگوید خطاهای معینی را تنها یک بار در هر فایل ارسال کنند (نه چندین بار، در صورتی که مشکل چندین بار در همان فایل رخ دهد).
مقدار پیشفرض 1 است: خطاهای اضافی را گزارش نکن.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
CHECK_DATA_CONSISTENCY = 0|1
اگر روی 1 تنظیم شود، به ابزارها اعلام میکند برخی بررسیهای سازگاری دادهها را اجرا کنند؛ برای نمونه، این که تابعی با تعداد اصابت غیرصفر حداقل شامل یک خط با تعداد اصابت غیرصفر باشد و بالعکس.
اگر دادههای قدیمی ناسازگاری دارید و راهی برای اصلاح یا مستثنی کردن آنها وجود ندارد، استفاده از این گزینه برای غیرفعال کردن بررسی ممکن است مفید باشد.
مقدار پیشفرض 1 است: بررسیهای سازگاری را اجرا کن.
GENHTML_LINE_FIELD_WIDTH = NUMBER_OF_CHARACTERS
عرض (بر حسب کاراکتر) ستون نمای کد منبع حاوی اطلاعات پوشش خط را مشخص میکند.
مقدار پیشفرض 12 است.
GENHTML_BRANCH_FIELD_WIDTH = NUMBER_OF_CHARACTERS
عرض (بر حسب کاراکتر) ستون نمای کد منبع حاوی اطلاعات پوشش انشعاب را مشخص میکند.
مقدار پیشفرض 16 است.
GENHTML_MCDC_FIELD_WIDTH = NUMBER_OF_CHARACTERS
عرض (بر حسب کاراکتر) ستون نمای کد منبع حاوی اطلاعات پوشش MC/DC را مشخص میکند.
مقدار پیشفرض 14 است.
GENHTML_OWNER_FIELD_WIDTH = NUMBER_OF_CHARACTERS
عرض (بر حسب کاراکتر) ستون نمای کد منبع حاوی اطلاعات مالک (همانطور که توسط اسکریپت حاشیهنویسی شما گزارش شده است) را مشخص میکند. این گزینه تنها در صورتی اثر دارد که از اسکریپت حاشیهنویسی منبع استفاده کنید: گزینه --annotation-script را در صفحه راهنمای genhtml ببینید.
مقدار پیشفرض 20 است.
GENHTML_AGE_FIELD_WIDTH = NUMBER_OF_CHARACTERS
عرض (بر حسب کاراکتر) ستون نمای کد منبع حاوی قدمت بلوک مربوطه (همانطور که توسط اسکریپت حاشیهنویسی شما گزارش شده است) را مشخص میکند. این گزینه تنها در صورتی اثر دارد که از اسکریپت حاشیهنویسی منبع استفاده کنید: گزینه --annotation-script را در صفحه راهنمای genhtml ببینید.
مقدار پیشفرض 5 است.
GENHTML_FRAMES = 0 | 1
مشخص میکند که آیا نمای جزئیات منبع باید شامل یک تصویر ناوبری باشد یا خیر. مدخل --frame را در صفحه راهنمای genhtml ببینید.
GENHTML_OVERVIEW_WIDTH = PIXEL_SIZE
عرض (بر حسب پیکسل) تصویر نمای کلی ایجادشده هنگام تولید خروجی HTML با استفاده از گزینه --frames در genhtml را مشخص میکند.
مقدار پیشفرض 80 است.
GENHTML_NAV_RESOLUTION = LINES
تفکیکپذیری ناوبری نمای کلی را هنگام تولید خروجی HTML با استفاده از گزینه --frames در genhtml مشخص میکند. این عدد حداکثر اختلاف در خطوط بین موقعیتی که کاربر از نمای کلی انتخاب کرده و موقعیتی که پنجره کد منبع به آن پیمایش میشود را مشخص میکند.
مقدار پیشفرض 4 است.
GENHTML_NAV_OFFSET = LINES
آفست خط ناوبری نمای کلی را که هنگام تولید خروجی HTML با استفاده از گزینه --frames در genhtml اعمال میشود مشخص میکند.
کلیک کردن روی یک خط در تصویر نمای کلی باید نمای کد منبع را در موقعیتی کمی بالاتر نمایش دهد، به طوری که خط درخواستی اولین خط پنجره نباشد. این عدد آن آفست را مشخص میکند.
مقدار پیشفرض 10 است.
GENHTML_KEEP_DESCRIPTIONS = 0 | 1
اگر غیرصفر باشد، هنگام تولید خروجی HTML با استفاده از genhtml، توضیحات بلااستفاده آزمون حفظ میشوند.
این گزینه متناظر با گزینه --keep-descriptions در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_NO_PREFIX = 0 | 1
اگر غیرصفر باشد، برای یافتن و حذف پیشوند مشترک از نام پوشهها تلاشی نمیشود.
این گزینه متناظر با گزینه --no-prefix در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_NO_SOURCE = 0 | 1
اگر غیرصفر باشد، هنگام تولید خروجی HTML با استفاده از genhtml، نمای کد منبع ایجاد نمیشود.
این گزینه متناظر با گزینه --no-source در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_NUM_SPACES = NUM
تعداد فاصلههایی (space) را مشخص میکند که باید به عنوان جایگزین کاراکترهای تب (tab) در نمای کد منبع HTML تولیدشده توسط genhtml استفاده شوند.
این گزینه متناظر با گزینه --num-spaces در genhtml است.
مقدار پیشفرض 8 است.
GENHTML_LEGEND = 0 | 1
اگر غیرصفر باشد، راهنمایی (legend) برای توضیح مفهوم کدگذاری رنگی در خروجی HTML تولیدشده توسط genhtml گنجانده میشود.
این گزینه متناظر با گزینه --legend در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_HTML_PROLOG = FILENAME
در صورت تنظیم، محتوای فایل مشخصشده را در ابتدای خروجی HTML میگنجاند.
این گزینه متناظر با گزینه --html-prolog در genhtml است.
پیشفرض این است که از هیچ پیشگفتار (prolog) اضافی استفاده نشود.
GENHTML_HTML_EPILOG = FILENAME
در صورت تنظیم، محتوای فایل مشخصشده را در انتهای خروجی HTML میگنجاند.
این گزینه متناظر با گزینه --html-epilog در genhtml است.
پیشفرض این است که از هیچ پسگفتار (epilog) اضافی استفاده نشود.
GENHTML_HTML_EXTENSION = EXTENSION
در صورت تنظیم، از رشته مشخصشده به عنوان پسوند نام فایل برای فایلهای HTML تولیدشده استفاده میکند.
این گزینه متناظر با گزینه --html-extension در genhtml است.
پسوند پیشفرض “html” است.
GENHTML_HTML_GZIP = 0 | 1
در صورت تنظیم، تمام فایلهای html را با استفاده از gzip فشرده میکند.
این گزینه متناظر با گزینه --html-gzip در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_SORT = 0 | 1
اگر غیرصفر باشد، هنگام تولید خروجی HTML با استفاده از genhtml، صفحات نمای کلی را مرتبشده بر اساس نرخهای پوشش ایجاد میکند.
این گزینه را میتوان با استفاده از گزینه --no-sort در genhtml روی 0 تنظیم کرد.
مقدار پیشفرض 1 است.
GENHTML_HIERARCHICAL = 0 | 1
اگر غیرصفر باشد، گزارش HTML از ساختار سلسلهمراتبی پوشههای کد منبع پیروی خواهد کرد.
این گزینه معادل استفاده از گزینه خط فرمان --hierarchical در genhtml است. نماهای «سلسلهمراتبی» (Hierarchical) و «مسطح» (flat) ناسازگار با یکدیگر (مانعةالجمع) هستند.
مقدار پیشفرض 0 است.
GENHTML_FLAT_VIEW = 0 | 1
اگر غیرصفر باشد، جدول سطح بالای HTML شامل تمام فایلهای پروژه خواهد بود و هیچ صفحه پوشه میانی وجود نخواهد داشت.
این گزینه معادل استفاده از گزینه خط فرمان --flat در genhtml است. نماهای «سلسلهمراتبی» و «مسطح» مانعةالجمع هستند.
مقدار پیشفرض 0 است.
GENHTML_SHOW_NAVIGATION = 0 | 1
اگر غیرصفر باشد، جدول خلاصه نمای «کد منبع» در گزارش پوشش غیرتفاضلی، شامل پیوندهایی از عدد به اولین خط منبع در دستهبندی مربوطه («Hit» یا «Not hit») خواهد بود. پیوندهای کد منبع همیشه در گزارشهای پوشش تفاضلی فعال هستند.
این گزینه معادل استفاده از گزینه خط فرمان --show-navigation در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_SHOW_OWNER_TABLE = 0 | 1 | ALL
اگر غیرصفر باشد، معادل فلگ --show-owners در genhtml است: برای جزئیات genhtml(1) <file://../man/genhtml.1.html> را ببینید.
مقدار پیشفرض 0 است.
COMPACT_SUMMARY_TABLES = 0 | 1
اگر غیرصفر باشد، در صورتی که فقط یک عنصر در دسته مربوطه وجود داشته باشد، سطر «مجموع» (Total) را در جدول خلاصه «تاریخ» و «مالک» حذف میکند.
هنگامی که تعداد زیادی فایل با یک نویسنده واحد وجود دارد، این کار میتواند اندازه جدول خلاصه را تقریباً به نصف کاهش دهد.
مقدار پیشفرض 1 (فعال) است.
OWNER_TABLE_ENTRIES = INTEGER
این گزینه برای تعیین تعداد مدخلهای جدول «مالک» در جدول خلاصه (در بالای صفحه) که در صورت درخواست برش جدول مالک باید نگهداشته شوند، به genhtml استفاده میشود. نویسندگان بر اساس مقدار کد اجرانشده مرتب میشوند؛ بنابراین موارد حذفشده خطاکاران کوچکتر خواهند بود و بزرگترین خطاکاران حفظ میشوند. اگر این گزینه تنظیم نشود، جدولهای مالک کوتاه نمیشوند.
این گزینه اثری ندارد مگر اینکه genhtml --show-owners فعال باشد. برای جزئیات، گزینه --show-owners را در genhtml(1) <file://../man/genhtml.1.html> ببینید.
پیشفرض تنظیمنشده است (یعنی جدولهای مالک کوتاه نمیشوند).
TRUNCATE_OWNER_TABLE = COMMA_SEPARATED_LIST
این گزینه به genhtml میگوید که آیا جدول «مالک» را در سطح بالا (top)، پوشه یا فایل کوتاه کند یا خیر. این گزینه به همراه پارامتر owner_table_entries مشخص میکند که چه تعداد از مدخلهای نویسندگان نگهداشته شوند.
این گزینه تاثیری ندارد مگر اینکه genhtml --show-owners فعال باشد و پیکربندی owner_table_entries نیز تنظیم شده باشد.
اگر این گزینه چندین بار در فایل lcovrc تنظیم شود، مقادیر با یکدیگر ترکیب میشوند تا فهرستی از سطوحی را تشکیل دهند که کوتاهسازی در آنها رخ خواهد داد. به طور مشابه، اگر این گزینه تنظیم نشده باشد اما owner_table_entries تنظیم شده باشد، جدول در تمام سطوح کوتاه خواهد شد.
برای جزئیات، گزینه --show-owners را در genhtml(1) <file://../man/genhtml.1.html> ببینید.
پیشفرض این است که فهرست کوتاه نشود.
GENHTML_SHOW_NONCODE_OWNERS = 0 | 1
اگر غیرصفر باشد، معادل فلگ --show-noncode در genhtml است: برای جزئیات genhtml(1) <file://../man/genhtml.1.html> را ببینید.
مقدار پیشفرض 0 است.
GENHTML_SHOW_FUNCTION_PROPORTION = 0 | 1
اگر غیرصفر باشد، ستونی به جدول «جزئیات پوشش تابع» اضافه میکند تا نسبت خطوط و انشعابات اجراشده درون تابع را نشان دهد.
این گزینه معادل استفاده از گزینه خط فرمان --show-proportion در genhtml است.
مقدار پیشفرض 0 است.
GENHTML_SYNTHESIZE_MISSING = 0 | 1
اگر غیرصفر باشد، معادل فلگ --synthesize-missing در genhtml است: برای جزئیات genhtml(1) <file://../man/genhtml.1.html> را ببینید.
مقدار پیشفرض 0 است.
GENHTML_CHARSET = CHARSET
مجموعه کاراکترهای (character set) تمام صفحات HTML تولیدشده را مشخص میکند.
اگر کد منبع شامل کاراکترهایی است که بخشی از مجموعه کاراکترهای پیشفرض نیستند از این گزینه استفاده کنید. توجه داشته باشید در صورتی که یک پیشگفتار سفارشی HTML مشخص شده باشد، این گزینه نادیده گرفته میشود (همچنین genhtml_html_prolog را ببینید).
مقدار پیشفرض UTF-8 است.
DEMANGLE_CPP = C++FILT
در صورت تنظیم، این گزینه به genhtml/lcov/geninfo دستور میدهد نامهای توابع C++ را در نمای کلی توابع ناواضحزدایی (demangle) کنند و نام ابزار مورداستفاده برای این کار را مشخص میکند. اگر میخواهید نامهای داخلی توابع C++ را به قالبی خوانا برای انسان جهت نمایش در صفحه نمای کلی توابع HTML تبدیل کنید، این گزینه را مقداردهی نمایید.
اگر گزینه demangle_cpp چندین بار استفاده شود، هنگام اجرای فراخوان، آرگومانها به یکدیگر متصل میشوند؛ شبیه به نحوه کار پارامتر -Xlinker در gcc. این یک روش سادهتر برای ارسال آرگومانها به ابزار شما بدون نیاز به اسکریپت پوششی (wrapper) فراهم میکند. در این حالت، فراخوان شما به این شکل اجرا میشود: | tool-0 ‘tool-1; … آرگومانها هنگام ارسال به پوسته داخل کوتیشن قرار میگیرند تا پارامترهای حاوی فاصله به درستی مدیریت شوند.
توجه داشته باشید که ابزار demangling از طریق پایپ (pipe) فراخوانی میشود و انتظار میرود از stdin بخواند و در stdout بنویسد.
این گزینه متناظر با گزینه خط فرمان --demangle-cpp در genhtml است.
پیشفرض تنظیمنشده است (ناواضحزدایی C++ غیرفعال است).
GENHTML_DESC_HTML = 0 | 1
اگر غیرصفر باشد، توضیحات موارد آزمون (test case) میتوانند حاوی نشانهگذاری HTML باشند.
اگر میخواهید نشانهگذاری HTML (برای مثال جهت درج پیوندها) را در توضیحات مورد آزمون بگنجانید، این گزینه را روی یک تنظیم کنید. هنگامی که روی صفر تنظیم شود، کاراکترهای نشانهگذاری HTML اسکیپ میشوند تا به صورت متن ساده در صفحه توضیحات مورد آزمون نمایش داده شوند.
مقدار پیشفرض 0 است.
GENHTML_PRECISION = 1 | 2 | 3 | 4
تعداد ارقام بعد از ممیز اعشار را برای نمایش نرخهای پوشش مشخص میکند.
مقدار پیشفرض 1 است.
MERGE_FUNCTION_ALIASES = 0 | 1
اگر غیرصفر باشد، نامهای مستعار تابع را در جدول جزئیات تابع گروهبندی میکند. به genhtml در man(1) مراجعه کنید.
مقدار پیشفرض 0 است.
GENHTML_MISSED = 0 | 1
اگر غیرصفر باشد، تعداد خطوط، توابع یا انشعابات از دست رفته به صورت اعداد منفی در صفحات نمای کلی نمایش داده میشود.
مقدار پیشفرض 0 است.
SUPPRESS_FUNCTION_ALIASES = 0 | 1
اگر غیرصفر باشد، نامهای مستعار را در جدول جزئیات تابع نشان نمیدهد.
در صورت غیرصفر بودن، به این معنی است که merge_function_aliases فعال است. برای جزئیات بیشتر صفحه راهنمای genhtml را ببینید.
مقدار پیشفرض 0 است.
DERIVE_FUNCTION_END_LINE = 0 | 1
اگر غیرصفر باشد، از دادههای پوشش «خط» برای استنتاج خط پایان هر تعریف تابع استفاده میکند. این کار هنگام مستثنی کردن برخی توابع خاص از گزارش پوشش مفید است. گزینههای --erase-functions، --filter trivial و --show-proportion را ببینید.
مقدار پیشفرض 1 است.
اگر از gcc/9 یا جدیدتر استفاده میکنید نیازی به این گزینه نیست؛ این نسخهها خطوط شروع و پایان تابع را مستقیماً گزارش میدهند.
توجه داشته باشید که خطوط پایان فقط برای فایلهای C/C++ استنتاج میشوند، مگر اینکه گزینه derive_function_end_lines_all_files فعال باشد؛ تنظیم c_file_extensions در بالا را برای مشاهده فهرست پسوندهای مورداستفاده برای شناسایی این فایلهای C/C++ ببینید.
توابع لامبدا (Lambda) در طول محاسبه خط پایان نادیده گرفته میشوند. توجه داشته باشید که لامبداها از طریق تطبیق نام تابع شناسایی میشوند؛ بنابراین اگر زنجیره ابزار شما قدیمیتر از آن است که نامهای demangle شده را در خروجی GCOV گزارش کند، باید demangling را فعال کنید. تنظیم demangle_cpp در بالا را ببینید.
برای زبانهایی غیر از C/C++: استنتاج خط پایان ممکن است مقدار نادرستی را محاسبه کند؛ برای نمونه، در مواردی که پس از تعریف یک تابع، خطوط کدی در دامنه سراسری (global scope) وجود داشته باشد. در این حالت، lcov به اشتباه کد بعدی را به تابع قبلی مرتبط میکند.
اگر این موضوع مشکلاتی ایجاد کند (مثلاً باعث شود lcov در مورد دادههای پوشش ناسازگار هشدار دهد)، چندین راهکار ممکن وجود دارد:
- غیرفعال کردن استنتاج خط پایان؛ مثلاً از طریق --rc derive_function_end_line=0.
- مستثنی کردن کد مشکلساز و/یا کل فایل مرتبط با آن.
- نادیده گرفتن پیام خطا، مثلاً از طریق گزینه خط فرمان --ignore-errors
- غیرفعال کردن بررسیهای سازگاری پایگاهداده پوشش؛ مثلاً از طریق --rc check_data_consistency=0.
DERIVE_FUNCTION_END_LINE_ALL_FILES = 0 | 1
اگر غیرصفر باشد، خطوط پایان را برای همه توابع صرفنظر از زبان منبع استنتاج میکند. به طور پیشفرض، خطوط پایان فقط در فایلهای C/C++ محاسبه میشوند.
اگر derive_function_end_lines غیرفعال باشد، این گزینه هیچ تاثیری ندارد.
مقدار پیشفرض 0 (غیرفعال) است.
TRIVIAL_FUNCTION_THRESHOLD = INTEGER
حداکثر اندازه تابع (بر حسب تعداد خطوط) را که توسط فیلتر --filter trivial بررسی خواهد شد، تعیین میکند.
مقدار پیشفرض 5 است.
EXCESSIVE_COUNT_THRESHOLD = NUMBER
آستانهای را برای تعداد اصابت تعیین میکند که lcov آن را بیش از حد/بعید/نشاندهنده یک اشکال در جایی از زنجیره ابزار شما میداند.
برای مثال، بعید است که کار (job) شما بتواند آنقدر طولانی اجرا شود که به دهها میلیارد اصابت دست یابد.
نوع پیام excessive برای گزارش مشکل احتمالی استفاده میشود؛ صفحات راهنمای genhtml(1)، lcov(1)، geninfo(1) را ببینید.
پیشفرض تنظیمنشده است (تعدادهای بیش از حد را بررسی نکن).
GENINFO_GCOV_TOOL = PATH_TO_GCOV
مسیر ابزار gcov (به gcov(1) مراجعه کنید) را که برای تولید اطلاعات پوشش از فایلهای داده استفاده میشود مشخص میکند.
این گزینه میتواند چندین بار استفاده شود؛ برای نمونه برای افزودن آرگومانها به فراخوان gcov. برای جزئیات بیشتر صفحه راهنمای geninfo را ببینید.
GENINFO_ADJUST_TESTNAME = 0 | 1
اگر غیرصفر باشد، هنگام دریافت دادههای پوشش، نامهای آزمون را طوری تنظیم میکند که شامل اطلاعات سیستمعامل باشند.
مقدار پیشفرض 0 است.
FORGET_TESTCASE_NAMES = 0 | 1
اگر غیرصفر باشد، نامهای موارد آزمون را در فایل info. نادیده میگیرد. این کار در صورتی که کاربر به خلاصه پوشش به ازای هر مورد آزمون در گزارشهای پوشش نیازی نداشته باشد، ممکن است عملکرد را بهبود بخشیده و مصرف حافظه را کاهش دهد.
این معادل گزینه “--forget-test-names” در lcov/genhtml است.
مقدار پیشفرض 0 است.
CHECKSUM = 0 | 1
اگر غیرصفر باشد، هنگام ثبت دادههای پوشش، چکسامهای (checksum) کد منبع را تولید میکند. چکسامها برای جلوگیری از ادغام دادههای پوشش از نسخههای ناسازگار کد منبع مفید هستند، اما تولید چکسام اندازه فایلهای پوشش و زمان لازم برای تولید آن فایلها را افزایش میدهد.
این گزینه میتواند توسط گزینههای خط فرمان --checksum و --no-checksum بازنویسی (override) شود.
مقدار پیشفرض 0 است.
توجه داشته باشید که این گزینه تا حدی تحتالشعاع گزینه version_script قرار گرفته است؛ گزینهای که کاری مشابه اما در سطح «کل فایل» انجام میدهد.
GENINFO_COMPAT_LIBTOOL = 0 | 1
اگر غیرصفر باشد، حالت سازگاری libtool را فعال میکند. هنگامی که حالت سازگاری libtool فعال است، lcov فرض میکند کد منبع مربوط به یک فایل da. واقع در پوشهای به نام «.libs» را میتوان در پوشه والد آن یافت.
این گزینه متناظر با گزینههای خط فرمان --compat-libtool و --no-compat-libtool در geninfo است.
مقدار پیشفرض 1 است.
GENINFO_EXTERNAL = 0 | 1
اگر غیرصفر باشد، دادههای پوشش را برای فایلهای منبع خارجی جمعآوری میکند.
فایلهای منبع خارجی فایلهایی هستند که در هیچیک از پوشههای (از جمله زیرپوشهها) مشخصشده توسط گزینههای --directory یا --base-directory در lcov / geninfo قرار ندارند. همچنین گزینه --follow و گزینههای geninfo_follow_symlinks و geninfo_follow_file_links را برای کنترلهای اضافی مسیر ببینید.
مقدار پیشفرض 1 است.
GENINFO_CAPTURE_ALL = 0 | 1
اگر غیرصفر باشد، دادههای پوشش را هم از فایلهای داده زمان اجرا و هم از فایلهای داده زمان کامپایل که هیچ داده زمان اجرای متناظری ندارند جمعآوری میکند. برای اطلاعات بیشتر شرح فلگ --all را در man(1) geninfo ببینید.
مقدار پیشفرض 0 است: فایلهای داده زمان کامپایل خام را پردازش نکن.
GENINFO_EXTERNAL = 0 | 1
اگر غیرصفر باشد، دادههای پوشش را برای فایلهای منبع خارجی جمعآوری میکند.
فایلهای منبع خارجی فایلهایی هستند که در هیچیک از پوشههای (از جمله زیرپوشهها) مشخصشده توسط گزینههای --directory یا --base-directory در lcov / geninfo قرار ندارند. همچنین گزینه --follow و گزینه geninfo_follow_file_links را برای کنترلهای اضافی مسیر ببینید.
مقدار پیشفرض 1 است.
GENINFO_FOLLOW_SYMLINKS = 0 | 1
معادل گزینه خط فرمان --follow در lcov/geninfo است. برای جزئیات geninfo(1) <file://../man/geninfo.1.html> را ببینید.
مقدار پیشفرض 0 است: پیوندهای نمادین را دنبال نکن.
GENINFO_FOLLOW_FILE_LINKS = 0 | 1
اگر غیرصفر باشد و گزینه خط فرمان --follow در lcov/geninfo مشخص شده باشد، نام مسیرهای فایل منبع که شامل پیوندهای نمادین (symlinks) هستند به مقصد واقعی خود حل میشوند. توجه داشته باشید که پوشه والد مقصد پیوند ممکن است «خارجی» در نظر گرفته شود و بنابراین توسط فلگ --no-external حذف گردد.
مقدار پیشفرض 0 است: نام مسیرها را تغییر نده.
GENINFO_GCOV_ALL_BLOCKS = 0 | 1
اگر غیرصفر باشد، ابزار gcov را با گزینه –all-blocks فراخوانی میکند.
استفاده از –all-blocks اطلاعات دقیقتری از پوشش انشعاب را برای هر خط تولید میکند. اگر برای افزایش سرعت فرآیند دریافت پوشش کد به اطلاعات دقیق پوشش انشعاب نیاز ندارید یا میخواهید اشکالی را در برخی نسخههای gcov دور بزنید که باعث میشود هنگام تحلیل برخی فایلها در حلقه بیپایان بیفتد، این گزینه را روی صفر قرار دهید.
مقدار پیشفرض 1 است.
GENINFO_UNEXECUTED_BLOCKS = 0 | 1
اگر غیرصفر باشد، تعداد اصابت (hit) خطوطی را که دارای مشخصه “unexecuted_block”: true هستند اما شامل هیچ انشعابی نبوده و تعداد غیرصفر دارند، تنظیم میکند. فرض بر این است که این خطوط اجرا نشدهاند.
توجه داشته باشید که این گزینه فقط برای نسخههای 9 و جدیدتر gcov موثر است.
مقدار پیشفرض 0 است.
GENINFO_COMPAT = MODE=VALUE[, MODE=VALUE,…]
مشخص میکند که geninfo هنگام دریافت دادههای پوشش باید یک یا چند حالت سازگاری را فعال کند.
این گزینه متناظر با گزینه خط فرمان --compat در geninfo است.
مقدار پیشفرض ‘libtool=on, hammer=auto, split_crc=auto’ است.
geninfo_adjust_src_path = pattern => replacement geninfo_adjust_src_path = pattern —————————————-
مسیرهای منبع را هنگام دریافت دادههای پوشش تنظیم میکند.
از این گزینه در شرایطی استفاده کنید که geninfo نمیتواند مسیر صحیح فایلهای کد منبع یک پروژه را پیدا کند. با ارائه یک pattern در قالب عبارت باقاعده پرل (به perlre(1) مراجعه کنید) و یک رشته جایگزین اختیاری، میتوانید به geninfo دستور دهید بخشهایی از مسیر نادرست منبع را حذف یا تغییر دهد.
مثال:
- 1.
- هنگامی که geninfo گزارش میدهد نمیتواند فایل منبع زیر را پیدا کند:
/path/to/src/.libs/file.c
در حالی که فایل در واقع در مسیر زیر قرار دارد:
/path/to/src/file.c
از پارامتر زیر استفاده کنید:
geninfo_adjust_src_path = /.libs
این کار تمام رشتههای «/.libs» را از مسیر حذف خواهد کرد.
- 2.
- هنگامی که geninfo گزارش میدهد که نمیتواند فایل منبع را پیدا کند:
/tmp/build/file.c
در حالی که فایل در واقع در مسیر زیر قرار دارد:
/usr/src/file.c
از پارامتر زیر استفاده کنید:
geninfo_adjust_src_path = /tmp/build => /usr/src
این کار تمام رشتههای «/tmp/build» در مسیر را به «/usr/src» تغییر میدهد.
گزینه adjust_src_path مشابه گزینه substitution = … است - که تا حدودی عمومیتر است و به شما امکان میدهد چندین الگوی جایگزینی را مشخص کنید. همچنین گزینه resolve_script را ببینید.
SOURCE_DIRECTORY = DIRNAME
افزودن ‘dirname’ به فهرست مکانهای جستجوی فایلهای منبع. همچنین مدخل --source-directory را در صفحات راهنمای lcov، geninfo و genhtml ببینید.
برای مسیرهای نسبی فایلهای منبع، مثلاً مسیرهایی که در یک tracefile یا در خروجی gcov یافت شدهاند، ابتدا مسیر از ‘cwd’ (جایی که genhtml فراخوانی شده است) و سپس از هر یک از نامهای متناوب پوشه به ترتیب مشخصشده جستجو میشود. اولین مکان منطبق مورد استفاده قرار میگیرد.
این گزینه میتواند چندین بار مشخص شود تا پوشههای بیشتری به مسیر جستجوی منبع افزوده شوند.
توجه داشته باشید که گزینه خط فرمان بر ورودیهای فایل RC (در صورت وجود) تقدم دارد.
BUILD_DIRECTORY = DIRNAME
افزودن ‘dirname’ به فهرست مکانهای جستجو برای فایلهای منطبق GCNO (در geninfo) یا پیوندهای نمادین فایلهای منبع (در genhtml). توضیحات --build-directory را در صفحات راهنمای geninfo و genhtml ببینید.
این گزینه میتواند چندین بار مشخص شود تا پوشههای بیشتری به مسیر جستجوی ساخت افزوده شوند.
توجه داشته باشید که گزینه خط فرمان بر ورودیهای فایل RC (در صورت وجود) تقدم دارد.
GENINFO_AUTO_BASE = 0 | 1
در صورت غیرصفر بودن، از روش مکاشفهای (heuristic) برای تعیین پوشه پایه هنگام جمعآوری دادههای پوشش استفاده میکند.
از این گزینه هنگام استفاده از geninfo روی پروژههایی استفاده کنید که با libtool یا محیطهای ساخت مشابهی ساخته شدهاند که با چندین پوشه پایه کار میکنند، یعنی محیطهایی که در آنها پوشه کاری جاری هنگام فراخوانی کامپایلر با پوشهای که فایل کد منبع در آن قرار دارد یکسان نیست و علاوه بر این، بین فایلهای یک پروژه نیز تفاوت دارد.
پیشفرض 1 است.
GENINFO_INTERMEDIATE = 0 | 1 | AUTO
مشخص میکند که آیا از قالب واسط gcov استفاده شود یا خیر
از این گزینه برای کنترل اینکه آیا geninfo باید در حین جمعآوری دادههای پوشش از قالب واسط gcov استفاده کند یا خیر، بهره بگیرید. استفاده از قالب واسط gcov باید سرعت پردازش را افزایش دهد. همچنین هنگام استفاده از گزینه خط فرمان --initial دادههای پوشش شاخه را فراهم میکند.
مقادیر معتبر عبارتند از 0 برای غیرفعال، 1 برای فعال، و «auto» برای اینکه به geninfo اجازه داده شود در صورت پشتیبانی توسط gcov، بهطور خودکار از قالب واسط استفاده کند.
پیشفرض «auto» است.
NO_EXCEPTION_BRANCH = 0 | 1
مشخص میکند که آیا شاخههای استثنا از پوشش شاخه مستثنی شوند یا خیر. شناسایی و حذف شاخههای استثنای ++C وابسته به علامتگذاری صحیح آنها توسط کامپایلر/زنجیرهابزار شما در دادههای پوشش تولیدشده است.
این گزینه توسط lcov، geninfo و genhtml استفاده میشود.
مقدار no_exception_branch = 1 معادل گزینه خط فرمان --filter exception است.
پیشفرض 0 است.
GENINFO_CHUNK_SIZE = INTEGER [%]
تعداد فایلهای GCDA را مشخص میکند که باید در هر فراخوانی در هر پردازه فرزند پردازش شوند. این پارامتر بر توازن زمان CPU صرفشده در فرزند و در نتیجه تعداد پردازههای فرزند تکمیلشده که در صف ادغام با پردازه والد قرار میگیرند اثر میگذارد - که این امر بر تأخیر صفبندی تأثیرگذار است. تأخیر صفبندی بالاتر، همزمانی مؤثر را کاهش میدهد.
پیشفرض %80 از total_number_of_gcda_files / maximum_number_of_parallel_children است، میانگین تعداد فایلهایی که انتظار میرود توسط هر فرزند پردازش شوند. مدخل --parallel را در صفحه راهنمای geninfo ببینید.
آرگومان میتواند یک مقدار عدد صحیح برای استفاده به عنوان اندازه تکه یا درصدی از میانگین تعداد فایلهای پردازششده در هر فرزند باشد.
این گزینه تأثیری ندارد مگر اینکه گزینه --parallel مشخص شده باشد.
GENINFO_INTERVAL_UPDATE = INTEGER
درصد فایلهای GCDA را تنظیم میکند که باید بین بهروزرسانیهای کنسول/پیشرفت پردازش شوند. این تنظیم ممکن است برای تنظیم پارامترها و عیبیابی مشکلات عملکردی مشهود مفید باشد.
پیشفرض %5 است.
این گزینه تأثیری ندارد مگر اینکه گزینه --parallel مشخص شده باشد.
LCOV_FILTER_CHUNK_SIZE = INTEGER [%]
تعداد فایلهای منبعی را مشخص میکند که هنگام اعمال فیلترهای نقاط پوشش (coverpoints) باید در هر فراخوانی در هر پردازه فرزند پردازش شوند - پارامتر filter = ... در زیر را ببینید. این پارامتر بر توازن زمان CPU صرفشده در فرزند و در نتیجه تعداد پردازههای فرزند تکمیلشده که در صف ادغام با والد قرار دارند اثر میگذارد - که این امر بر تأخیر صفبندی تأثیرگذار است. تأخیر صفبندی بالاتر، همزمانی مؤثر را کاهش میدهد.
پیشفرض %80 از total_number_of_source_files / maximum_number_of_parallel_children است.
آرگومان میتواند یک مقدار عدد صحیح برای استفاده به عنوان اندازه تکه یا درصدی از میانگین تعداد فایلهای پردازششده در هر فرزند باشد.
این گزینه تأثیری ندارد مگر اینکه گزینه --parallel مشخص شده باشد و lcov_filter_parallel غیرصفر باشد.
LCOV_FILTER_PARALLEL = 0 | 1
این گزینه مشخص میکند که آیا فیلتر کردن نقاط پوشش باید بهصورت ترتیبی انجام شود یا موازی. اگر تعداد فایلهای مورد پردازش بسیار زیاد باشد، موازیسازی ممکن است کارایی را بهبود بخشد.
این گزینه تأثیری ندارد مگر اینکه گزینه --parallel مشخص شده باشد.
پیشفرض 1 (فعال) است.
LCOV_GCOV_DIR = PATH_TO_KERNEL_COVERAGE_DATA
مسیر پوشهای را مشخص کنید که دادههای پوشش هسته در آن یافت میشوند، یا برای تشخیص خودکار آن را تعریفنشده باقی بگذارید.
پیشفرض تشخیص خودکار است.
LCOV_TMP_DIR = TEMP
مکان پوشهای را مشخص کنید که برای فایلهای موقت استفاده میشود.
پیشفرض ‘/tmp’ است.
LCOV_LIST_FULL_PATH = 0 | 1
در صورت غیرصفر بودن، در حین عملیات فهرستگیری، مسیر کامل فایلهای کد منبع را چاپ میکند.
این گزینه با گزینه --list-full-path در lcov مطابقت دارد.
پیشفرض 0 است.
LCOV_LIST_MAX_WIDTH = WIDTH
حداکثر عرض را برای خروجی فهرست مشخص میکند. در صورتی که lcov_list_full_path غیرصفر باشد، این مقدار نادیده گرفته میشود.
پیشفرض 80 است.
LCOV_LIST_TRUNCATE_MAX = PERCENTAGE
حداکثر درصد نام فایلهایی را مشخص میکند که ممکن است هنگام انتخاب یک پیشوند پوشه در خروجی فهرست کوتاه (truncate) شوند. در صورتی که lcov_list_full_path غیرصفر باشد، این مقدار نادیده گرفته میشود.
پیشفرض 20 است.
FUNCTION_COVERAGE = 0 | 1
مشخص میکند که آیا lcov/geninfo/genhtml باید دادههای پوشش توابع را تولید، پردازش و نمایش دهند یا خیر.
غیرفعال کردن پوشش توابع با تنظیم این گزینه روی 0 میتواند مصرف حافظه و زمان CPU را هنگام جمعآوری و پردازش دادههای پوشش توسط lcov اندکی کاهش دهد و همچنین حجم فایلهای داده حاصل را کم کند.
این گزینه میتواند توسط گزینههای خط فرمان --function-coverage و --no-function-coverage لغو و جایگزین شود.
پیشفرض 1 است.
BRANCH_COVERAGE = 0 | 1
مشخص میکند که آیا lcov/geninfo باید دادههای پوشش شاخه را تولید، پردازش و نمایش دهند یا خیر.
غیرفعال کردن پوشش شاخه با تنظیم این گزینه روی 0 میتواند مصرف حافظه و زمان CPU را هنگام جمعآوری و پردازش دادههای پوشش توسط lcov کاهش دهد و همچنین حجم فایلهای داده حاصل را کم کند.
این گزینه میتواند توسط گزینههای خط فرمان --branch-coverage و --no-branch-coverage لغو و جایگزین شود.
پیشفرض 0 است.
MCDC_COVERAGE = 0 | 1
مشخص میکند که آیا lcov/geninfo باید دادههای پوشش شرط/تصمیم اصلاحشده (MC/DC) را تولید، پردازش و نمایش دهند یا خیر.
غیرفعال کردن پوشش MC/DC با تنظیم این گزینه روی 0 میتواند مصرف حافظه و زمان CPU را هنگام جمعآوری و پردازش دادههای پوشش توسط lcov کاهش دهد و همچنین حجم فایلهای داده حاصل را کم کند.
این گزینه میتواند توسط گزینه خط فرمان --mcdc-coverage لغو و جایگزین شود.
پیشفرض 0 (غیرفعال) است.
برای جزئیات بیشتر، بخش MC/DC در genhtml(1) <file://../man/genhtml.1.html> را ببینید.
LCOV_EXCL_LINE = EXPRESSION
عبارت باقاعده خطوطی را که باید مستثنی شوند مشخص میکند. نقاط پوشش خط، شاخه و تابع مرتبط با خطوطی که این عبارت باقاعده در آنها یافت شود کنار گذاشته میشوند.
حداقل ۲ مورد کاربرد (تا حدی) متداول برای نشانگرهای استثنای سفارشی وجود دارد:
- شما از چندین ابزار برای تحلیل پوشش استفاده میکنید که هر یک دستورالعملهای خاص خود را دارند و نمیخواهید کد منبع خود را با دستورالعملهای جداگانه برای هر یک از آنها پیچیده کنید.
- میخواهید نواحی مختلف یا انواع متفاوتی از کد را در زمینههای مختلف مستثنی کنید - برای مثال، نادیده گرفتن یا نادیده نگرفتن کدهای اشکالزدایی/ردیابی بر اساس نیاز تیم شما.
پیشفرض ‘LCOV_EXCL_LINE’ است.
LCOV_EXCL_BR_LINE = EXPRESSION
عبارت باقاعده خطوطی را که باید از پوشش شاخه مستثنی شوند مشخص میکند. نقاط پوشش شاخه مرتبط با خطوطی که این عبارت باقاعده در آنها یافت شود کنار گذاشته میشوند. (نقاط پوشش خط و تابع تحت تأثیر قرار نمیگیرند.)
پیشفرض ‘LCOV_EXCL_BR_LINE’ است.
LCOV_EXCL_EXCEPTION_BR_LINE = EXPRESSION
عبارت باقاعده خطوطی را که باید از پوشش شاخههای استثنا مستثنی شوند مشخص میکند. نقاط پوشش شاخه مرتبط با استثنا که به خطوط منطبق با این عبارت باقاعده مربوط هستند کنار گذاشته میشوند. (نقاط پوشش خط و تابع تحت تأثیر قرار نمیگیرند؛ همچنین نقاط پوشش شاخهای که با استثناها مرتبط نیستند نیز تحت تأثیر قرار نمیگیرند.)
همچنین ‘geninfo_no_exception_branch’ را ببینید؛ در صورت غیرصفر بودن، تمام شاخههای استثنای شناساییشده حذف خواهند شد.
توجه داشته باشید که این ویژگی نیازمند پشتیبانی از جانب کامپایلر شما است - و بنابراین ممکن است تمام نقاط پوشش مرتبط با استثنا را نادیده نگیرد.
پیشفرض ‘LCOV_EXCL_EXCEPTION_BR_LINE’ است.
LCOV_EXCL_START = EXPRESSION
عبارت باقاعدهای را برای نشانهگذاری آغاز یک ناحیه استثنا مشخص میکند. تمامی نقاط پوشش درون نواحی استثنا کنار گذاشته میشوند.
پیشفرض ‘LCOV_EXCL_START’ است.
LCOV_EXCL_STOP = EXPRESSION
عبارت باقاعدهای را برای نشانهگذاری پایان یک ناحیه استثنا مشخص میکند.
پیشفرض ‘LCOV_EXCL_STOP’ است.
LCOV_EXCL_BR_START = EXPRESSION
عبارت باقاعدهای را مشخص میکند که برای نشانهگذاری آغاز ناحیهای که نقاط پوشش شاخه در آن مستثنی میشوند، استفاده میگردد. نقاط پوشش خط و تابع در این ناحیه مستثنی نمیشوند.
پیشفرض ‘LCOV_EXCL_BR_START’ است.
LCOV_EXCL_BR_STOP = EXPRESSION
عبارت باقاعدهای را مشخص میکند که برای نشانهگذاری پایان ناحیهای که نقاط پوشش شاخه در آن مستثنی میشوند، استفاده میگردد.
پیشفرض ‘LCOV_EXCL_BR_STOP’ است.
LCOV_EXCL_EXCEPTION_BR_START = EXPRESSION
عبارت باقاعدهای را مشخص میکند که برای نشانهگذاری آغاز ناحیهای که نقاط پوشش شاخه مرتبط با استثناها در آن مستثنی میشوند، استفاده میگردد. نقاط پوشش خط، تابع و شاخههای غیرمرتبط با استثنا در این ناحیه مستثنی نمیشوند.
همچنین ‘geninfo_no_exception_branch’ را ببینید؛ در صورت غیرصفر بودن، تمام شاخههای استثنای شناساییشده حذف خواهند شد.
توجه داشته باشید که شناسایی نقاط پوشش شاخههای استثنا نیازمند پشتیبانی کامپایلر شما است - و بنابراین ممکن است تمام نقاط پوشش مرتبط با استثنا را نادیده نگیرد.
پیشفرض ‘LCOV_EXCL_EXCEPTION_BR_START’ است.
LCOV_EXCL_EXCEPTION_BR_STOP = EXPRESSION
عبارت باقاعدهای را مشخص میکند که برای نشانهگذاری پایان ناحیهای که نقاط پوشش شاخه مرتبط با استثناها در آن مستثنی میشوند، استفاده میگردد.
پیشفرض ‘LCOV_EXCL_EXCEPTION_BR_STOP’ است.
LCOV_UNREACHABLE_LINE = EXPRESSION
عبارت باقاعده خط دستنیافتنی را مشخص میکند که باید از گزارشگیری مستثنی شود، اما در صورت اجرا شدن (اصابت)، باید یک خطای «ناسازگاری» (inconsistent) تولید کند. به این معنی که: ما معتقدیم کد نشانهگذاریشده دستنیافتنی است، بنابراین در صورت اجرای کد «دستنیافتنی»، نقصی در کد، محل قرارگیری دستورالعمل یا هر دو وجود دارد. نقاط پوشش خط، شاخه و تابع مرتبط با خطوطی که این عبارت باقاعده در آنها یافت شود کنار گذاشته میشوند.
پیشفرض ‘LCOV_UNREACHABLE_LINE’ است.
LCOV_UNREACHABLE_START = EXPRESSION
عبارت باقاعدهای را برای نشانهگذاری آغاز یک بلوک کد دستنیافتنی مشخص میکند. تمامی نقاط پوشش درون نواحی استثنا کنار گذاشته میشوند، اما اگر کدی درون بلوک اجرا شود، ابزار یک خطای «ناسازگاری» (inconsistent) تولید خواهد کرد.
پیشفرض ‘LCOV_UNREACHABLE_START’ است.
LCOV_UNREACHABLE_STOP = EXPRESSION
عبارت باقاعدهای را برای نشانهگذاری پایان بلوک کد دستنیافتنی مشخص میکند.
پیشفرض ‘LCOV_UNREACHABLE_STOP’ است.
FAIL_UNDER_BRANCHES = PERCENTAGE
آستانه پوشش شاخه را مشخص میکند: اگر پوشش شاخه زیر این آستانه باشد، lcov/genhtml/geninfo تمامی فایلها و پیامهای نتیجه عادی را تولید میکنند، اما یک کد خروج غیرصفر بازمیگردانند.
این گزینه معادل آرگومان خط فرمان --fail-under-branches در lcov/genhtml/geninfo است. برای جزئیات بیشتر، lcov(1) <file://../man/lcov.1.html> را ببینید.
پیشفرض 0 است (بدون آستانه).
RETAIN_UNREACHABLE_COVERPOINTS_IF_EXECUTED = [0 | 1]
مشخص میکند که آیا نقاط پوشش در نواحی «دستنیافتنی» که اجرا شدهاند (اصابت کردهاند) کنار گذاشته شوند (0) - زیرا ناحیه مستثنی شده است - یا حفظ شوند (1) - زیرا به نظر میرسد دستورالعمل نادرست است. برای جزئیات بیشتر بخش «Exclusion markers» را در geninfo(1) <file://../man/geninfo.1.html> ببینید.
پیشفرض 1 (حفظ نقاط پوشش) است.
FAIL_UNDER_LINES = PERCENTAGE
آستانه پوشش خط را برای lcov مشخص میکند. اگر پوشش خط زیر این آستانه باشد، lcov/genhtml/geninfo تمامی فایلها و پیامهای نتیجه عادی را تولید میکنند، اما یک کد خروج غیرصفر بازمیگردانند.
این گزینه معادل آرگومان خط فرمان --fail-under-lines در lcov/genhtml/geninfo است.
پیشفرض 0 است (بدون آستانه).
PROFILE = FILENAME
در صورت تنظیم، به genhtml، lcov یا geninfo دستور میدهد تا دادههای زمان اجرا/پروفایل را تولید کنند که میتواند برای بهینهسازیهای آینده به کار رود. این گزینه معادل گزینه خط فرمان --profile است.
اگر filename خالی باشد، پروفایل در مکان پیشفرضی که توسط برنامه انتخاب میشود نوشته خواهد شد.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
پیشفرض تنظیمنشده است: هیچ دادهای تولید نمیشود.
PARALLEL = INTEGER
حداکثر تعداد پردازههای همزمان را برای استفاده به genhtml، lcov یا geninfo اعلام میکند. صفر به معنای استفاده از تمام هستههای موجود در سیستم است. پیشفرض 1 (یک) است - به این معنی که پردازش بهصورت متوالی انجام شود (بدون موازیسازی).
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
MEMORY = INTEGER_MB
حداکثر حافظه برای استفاده در حین عملیات پردازش موازی را به genhtml، lcov یا geninfo اعلام میکند. در واقع، در صورتی که این محدودیت نقض شود، پردازه fork() نخواهد کرد. صفر به معنای عدم وجود محدودیت است. پیشفرض 0 (صفر) است - به این معنی که هیچ محدودیت صریحی وجود ندارد.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
MEMORY_PERCENTAGE = NUMBER
حداکثر حافظه برای استفاده در حین عملیات پردازش موازی را به genhtml، lcov یا geninfo اعلام میکند. مقدار حداکثر به عنوان درصدی از کل حافظه موجود در سیستم محاسبه میشود؛ برای مثال، ‘75’ حافظه را به %75 از کل حافظه محدود میکند، در حالی که 150.5 آن را به %150.5 محدود خواهد کرد (یعنی بزرگتر از کل حافظه در دسترس). در واقع، در صورتی که این محدودیت نقض شود، پردازه fork() نخواهد کرد. توجه داشته باشید که این مقدار تنها زمانی استفاده میشود که مقدار حداکثر حافظه بهطور صریح تنظیم نشده باشد - خواه توسط گزینه خط فرمان --memory یا تنظیم فایل پیکربندی memory = integer.
پیشفرض تنظیمنشده است.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
MAX_FORK_FAILS = INTEGER
تعداد شکستهای پیاپی fork() را که باید در طول اجرای --parallel پیش از انصراف نادیده گرفته شوند، به genhtml، lcov یا geninfo اعلام میکند. توجه داشته باشید که genhtml/lcov/geninfo بلافاصله با شکست متوقف میشوند مگر اینکه پیام خطای fork نادیده گرفته شود - خواه از طریق دستورالعمل ignore_errors (در بالا)، گزینه خط فرمان --ignore-errors، یا در صورتی که stop_on_error غیرفعال شده باشد یا گزینه خط فرمان --keep-going استفاده شود.
حداکثر تعداد پیشفرض شکست fork برابر 5 است.
FORK_FAIL_TIMEOUT = INTEGER_SECONDS
به genhtml، lcov یا geninfo اعلام میکند که پس از شکست fork() چه مدت پیش از تلاش مجدد منتظر بمانند.
پیشفرض 10 (ثانیه) است.
MAX_TASKS_PER_CORE = INTEGER
این حداکثر تعداد فایلهایی است که genhtml در یک پردازه فرزند در طول اجرای موازی مدیریت خواهد کرد.
پیشفرض 20 است.
GENHTML_DATE_BINS = INTEGER[,INTEGER..]
این گزینه معادل گزینه «genhtml --date-bins» است. برای جزئیات، genhtml(1) <file://../man/genhtml.1.html> را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای تنظیم نقاط برش متعدد استفاده شود.
GENHTML_DATELABELS = STRING[,STRING..]
این گزینه معادل گزینه «genhtml --date-labels» است. برای جزئیات، genhtml(1) <file://../man/genhtml.1.html> را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای تنظیم چندین برچسب استفاده شود. تعداد برچسبها باید برابر با یک واحد بیشتر از تعداد نقاط برش باشد.
GENHTML_ANNOTATE_SCRIPT = PATH_TO_EXECUTABLE | PARAMETER
این گزینه معادل گزینه «genhtml --annotate-script» است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت حاشیهنویسی و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
GENHTML_ANNOTATE_TOOLTIP = TOOLTIP_STRING
این گزینه پنجره شناور (tooltip) را تنظیم میکند که هنگام بردن نشانگر ماوس کاربر روی کد منبع مربوطه ظاهر میشود. توجه داشته باشید که این راهنما فقط زمانی تولید میشود که بازخوانی (callback) اسکریپت حاشیهنویسی موفقیتآمیز باشد و یک شناسه کامیت غیر از «NONE» بازگرداند. مقدار tooltip_string را روی «» (رشته خالی) تنظیم کنید تا genhtml را مجبور کنید پنجره راهنما تولید نکند.
جایگزینیها روی tooltip_string انجام میشوند:
- %C: شناسه کامیت (از بازخوانی حاشیهنویسی - مدخل --annotate-script را در صفحه راهنمای genhtml ببینید)
- %U: نام اختصاری نویسنده کامیت (بازگرداندهشده توسط بازخوانی حاشیهنویسی)
- %F: نام کامل نویسنده کامیت (بازگرداندهشده توسط بازخوانی حاشیهنویسی)
- %D: تاریخ کامیت (مطابق آنچه توسط بازخوانی حاشیهنویسی بازگردانده شده است)
- %d: تاریخ کامیت بدون بخش زمان روز (یعنی فقط بخش تاریخ)
- %A: عمر کامیت.
- %l شماره خط منبع.
CONTEXT_SCRIPT = PATH_TO_EXECUTABLE_OR_MODULE | PARAMETER
این گزینه معادل گزینه --context-script در genhtml/lcov/geninfo است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت زمینه و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
CRITERIA_SCRIPT = PATH_TO_EXECUTABLE_OR_MODULE | PARAMETER
این گزینه معادل گزینه --criteria-script در genhtml/lcov/geninfo است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت معیارها و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
CRITERIA_CALLBACK_DATA = COMMA_SEPARATED_LIST
از این گزینه برای اعلام به genhtml استفاده میشود مبنی بر اینکه آیا میخواهید دادههای خلاصه تاریخ و/یا مالک به بازخوانی معیارهای شما ارسال شود یا خیر. توجه داشته باشید که دادههای خلاصه همیشه ارسال میشوند.
توجه داشته باشید که lcov و geninfo دادههای تاریخ یا مالک را ثبت نمیکنند - و بنابراین آن را به بازخوانی ارسال نمیکنند.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا مشخص کند که هم دادههای تاریخ و هم دادههای مالک باید بازگردانده شوند، یا میتوانید هر دو را در یک فهرست جداشده با کاما مشخص کنید. دادههای تاریخ و/یا مالک اگر و تنها اگر دستور genhtml شما حاشیهنویسی را فعال کرده باشد، بازگردانده خواهند شد.
اگر این گزینه چندین بار در فایل lcovrc ظاهر شود، مقادیر برای تشکیل فهرستی از انواع دستهبندی (binning) که به بازخوانی شما ارسال میشوند با یکدیگر ترکیب میگردند.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
CRITERIA_CALLBACK_LEVELS = COMMA_SEPARATED_LIST
از این گزینه برای اعلام به genhtml استفاده میشود مبنی بر اینکه آیا بازخوانیهای معیارها باید در سطح بالا (top)، پوشه (directory) یا فایل (file) رخ دهند.
اگر این گزینه چندین بار در فایل lcovrc ظاهر شود، مقادیر ترکیب میشوند تا فهرست سطوح گزارشی را تشکیل دهند که بازخوانی شما در آنها اجرا خواهد شد.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
CHECK_EXISTENCE_BEFORE_CALLBACK = 0 | 1
این گزینه ابزار را بهگونهای پیکربندی میکند که پیش از فراخوانی بازخوانیهای annotate-script یا version-script، وجود فایل را بررسی کند. در صورت تنظیم بودن و عدم وجود فایل، یک خطای source برانگیخته میشود. (توجه داشته باشید که این خطا ممکن است نادیده گرفته شود - گزینه --ignore-error را ببینید.)
اگر بازخوانی شما اطلاعات را در یک مخزن غیرمحلی جستجو میکند، ممکن است نخواهید وجود فایل را بررسی کنید.
پیشفرض 1 (بررسی وجود فایل) است.
COMPUTE_FILE_VERSION = 0 | 1
از این گزینه برای اعلام به ابزار استفاده میشود تا هنگام خواندن یک فایل .info (دادههای پوشش)، اطلاعات مفقود نسخه فایل را تولید کند. اطلاعات نسخه ممکن است به این دلیل مفقود باشد که دادهها توسط ابزاری تولید شدهاند که از نسخهگذاری پشتیبانی نمیکرده است، یا به این دلیل که دادهها بدون آرگومان لازم --version-script تولید شدهاند - یا به هر دلیل دیگری.
توجه داشته باشید که این گزینه بدون بازخوانی version-script - که توسط گزینه خط فرمان --version-script یا گزینه فایل پیکربندی version_script تعریف میشود - هیچ اثری ندارد.
پیشفرض 0 است: اطلاعات مفقود تولید نشود.
VERSION_SCRIPT = PATH_TO_EXECUTABLE | PARAMETER
این گزینه معادل گزینه «--version-script» در geninfo/lcov/genhtml است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت نسخه و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
RESOLVE_SCRIPT = PATH_TO_EXECUTABLE | PARAMETER
این گزینه معادل گزینه «--resolve-script» در geninfo/lcov/genhtml است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت حلوفصل (resolve) و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
اسکریپت حلوفصل مکانیزمی را برای یافتن فایل منبع یا دادهای فراهم میکند که با تغییر ساده مسیرها از طریق الگوهای جایگزینی (بخش «substitute = replace_regexp» در بالا را ببینید) و جستجو در فهرست پوشههای مربوطه قابل یافتن نیست:
- geninfo:
- مدخل فایل پیکربندی «‘build_directory = dirname’» یا گزینه خط فرمان --build=directory، که برای جستجوی فایلهای GCNO استفاده میشود،
- geninfo/genhtml/lcov:
- مدخل فایل پیکربندی «‘source_directory = dirname’» یا گزینه خط فرمان --source=directory، که برای جستجوی فایلهای منبع استفاده میشود.
اسکریپت حلوفصل به این صورت فراخوانی میشود:
resolve_script [callback_args] file_name
یا به صورت:
$resolve_callback = resolve_module ->new([callback_args])
برای مقداردهی اولیه بازخوانی، و سپس
$resolve_callback->``resolve`` (file_name)
برای یافتن مکان واقعی فایل.
در صورت لزوم، بازخوانی میتواند پسوند نام فایل را بررسی کند تا مشخص کند که آیا باید به دنبال فایل منبع بگردد یا فایل داده.
اسکریپت باید یا یک رشته خالی (فایل یافت نشد/چنین فایلی وجود ندارد) یا نام مسیر واقعی را بازگرداند. مسیر بازگرداندهشده میتواند مطلق یا نسبی نسبت به CWD باشد.
SELECT_SCRIPT = PATH_TO_EXECUTABLE | PARAMETER
این گزینه معادل گزینه «--select-script» در genhtml است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت انتخاب و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
اسکریپت انتخاب مکانیزمی را برای تصمیمگیری درباره اینکه آیا یک خط منبع خاص جالب توجه است - آیا باید در گزارش پوشش تولیدشده گنجانده شود - یا خیر، فراهم میکند.
خطوطی که انتخاب نشدهاند اما در محدوده num_context_lines از یک خط انتخابشده قرار دارند نیز در گزارش گنجانده میشوند. بخش زیر را ببینید.
توجه داشته باشید که انتخاب اساساً با این هدف در نظر گرفته شده است که نواحی کد را به همراه مقداری از زمینه پیرامونی آن نشان دهد. اگر هیچ کدی وجود نداشته باشد ممکن است آنطور که انتظار دارید عمل نکند - مثلاً، اگر ناحیه مورد نظر از طریق کامپایلر یا دستورالعملهای استثنا از کامپایل خارج شده باشد. برای مثال: هنگام انتخاب بر اساس SHA یا شناسه لیست تغییرات (changelist ID)، یک کامنت درجشده انتخاب نخواهد شد مگر اینکه در محدوده num_context_lines از یک خط کد درجشده یا تغییریافته قرار داشته باشد.
اسکریپت انتخاب به این صورت فراخوانی میشود:
select_script [callback_args] lineDataJson annotateDataJson fileName lineNumber
یا به صورت:
$selectCallback = select_module ->new([callback_args])
برای مقداردهی اولیه شیء بازخوانی، و سپس به صورت
$selectCallback select (lineDataRef annotateDataRef fileName lineNumber)
برای تعیین انتخاب، که در آن:
- fileName نام فایل منبع است و
- lineNumber شماره خط فایل منبع است که از صفر شمارهگذاری شده است،
- lineDataJson یک ساختار LineData با کدگذاری json است (کد منبع lcovutil.pm را ببینید)، و
- annotateDataJson دادههای با کدگذاری json بازگرداندهشده توسط annotate-script شما است (پارامتر --annotate-script در genhtml(1) <file://../man/genhtml.1.html> را ببینید)، یا در صورتی که هیچ حاشیهنویسی برای این فایل وجود نداشته باشد، یک رشته خالی است.
بازخوانی ماژول نیز مشابه است با این تفاوت که به جای کدگذاریهای JSON اشیاء، خود اشیاء به آن ارسال میشوند.
اسکریپت باید «1» یا «0» را بازگرداند.
پیادهسازی نمونه را در $|TOOL_NAME|_HOME/share/lcov/support-scripts/select.pm ببینید.
UNREACHABLE_SCRIPT = PATH_TO_MODULE | PARAMETER
این گزینه معادل گزینه «--unreachable-script» در geninfo/lcov/genhtml است.
این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت ماژول و هم گزینههای اضافی را که به بازخوانی ارسال میشوند مشخص کند.
برای جزئیات، صفحه راهنمای genhtml را ببینید.
NUM_CONTEXT_LINES = INTEGER
تعداد خطوط پیرامون هر خط انتخابشده را که در گزارش گنجانده میشود تنظیم میکند - گزینه select_script = … در بالا و گزینه خط فرمان --select-script در genhtml(1) <file://../man/genhtml.1.html> را ببینید.
FILTER = STR[,STR…]
این گزینه معادل گزینه --filter در geninfo، lcov و genhtml است. برای جزئیات، صفحه راهنمای genhtml را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای فعالسازی چندین فیلتر استفاده شود. فیلترهای مشخصشده در فایل lcovrc به انتهای فهرستی که در خط فرمان مشخص شده است اضافه میشوند.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
EXCLUDE = GLOB_PATTERN
این گزینه معادل گزینه --exclude در geninfo، lcov و genhtml است. برای جزئیات، صفحه راهنمای lcov را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای مشخص کردن چندین الگوی مستثنیسازی استفاده شود. الگوهای مشخصشده در فایل lcovrc به انتهای فهرستی که در خط فرمان مشخص شده است افزوده میشوند.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
INCLUDE = GLOB_PATTERN
این گزینه معادل گزینه --include در geninfo، lcov و genhtml است. برای جزئیات، صفحه راهنمای lcov را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای مشخص کردن چندین الگوی شمول استفاده شود. الگوهای مشخصشده در فایل lcovrc به انتهای فهرستی که در خط فرمان مشخص شده است افزوده میشوند.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
SIMPLIFY_SCRIPT = PATH_TO_EXECUTABLE | PARAMETER
این گزینه معادل گزینه --simplify-script در genhtml است. این گزینه میتواند چندین بار در فایل lcovrc استفاده شود تا هم یک اسکریپت سادهسازی و هم گزینههای اضافی را که به اسکریپت ارسال میشوند مشخص کند.
برای جزئیات، genhtml(1) <file://../man/genhtml.1.html> را ببینید.
SUBSTITUTE = REGEXP
این گزینه معادل گزینه --substitute در geninfo، lcov و genhtml است. برای جزئیات، صفحه راهنمای lcov را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای مشخص کردن چندین الگوی جایگزینی استفاده شود. اگر الگوها هم در خط فرمان و هم در فایل lcovrc مشخص شده باشند، الگوهای خط فرمان استفاده میشوند و الگوهای lcovrc کنار گذاشته خواهند شد.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
OMIT_LINES = REGEXP
این گزینه معادل گزینه --omit-lines در geninfo، lcov و genhtml است. برای جزئیات، صفحه راهنمای genhtml را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای مشخص کردن چندین الگوی مستثنیسازی استفاده شود. الگوهای مشخصشده در فایل lcovrc به انتهای فهرستی که در خط فرمان مشخص شده است افزوده میشوند.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
ERASE_FUNCTIONS = REGEXP
این گزینه معادل گزینه --erase-functions در geninfo، lcov و genhtml است. برای جزئیات، صفحه راهنمای genhtml را ببینید.
این گزینه میتواند چندین بار در فایل lcovrc برای مشخص کردن چندین الگوی مستثنیسازی استفاده شود. الگوهای مشخصشده در فایل lcovrc به انتهای فهرستی که در خط فرمان مشخص شده است افزوده میشوند.
این گزینه توسط genhtml، lcov و geninfo استفاده میشود.
LCOV_JSON_MODULE = MODULE | AUTO
ماژول JSON مورد استفاده را مشخص میکند، یا در صورت تنظیم روی ‘auto’، بهترین گزینه در دسترس را از میان مجموعهای از گزینهها انتخاب میکند. توجه داشته باشید که برخی از ماژولهای JSON کندتر از سایرین هستند (بهویژه JSON::PP در مقایسه با JSON::XS میتواند بسیار کند باشد).
پیشفرض ‘auto’ است.
SPLIT_CHAR = CHAR
نویسه (یا عبارت باقاعده) مورد استفاده برای تقسیم پارامترهای فهرستمانند که به صورت یک رشته واحد ارسال شدهاند را مشخص میکند. این پارامتر در مواردی مفید است که میخواهید از یک رشته چندگزینهای استفاده کنید اما یک یا چند مورد از گزینهها شامل نویسه کاما هستند که در غیر این صورت به عنوان جداکننده تلقی میشد.
پیشفرض ‘,’ (کاما - بدون نقلقول) است.
SCOPE_REGEXP = REGEXP
پیامهای اشکالزدایی را برای دادههای موجود در نام فایلهایی که با regexp مطابقت دارند چاپ میکند. تنها دستههای خاصی از پیامها ثبت میشوند؛ این مجموعه بسته به نیاز اشکالزدایی، هر از چند گاهی تغییر میکند.
CASE_INSENSITIVE = [0|1]
مشخص میکند که آیا مقایسه رشتهها هنگام یافتن نام فایلهای منطبق، بررسی دستورالعملهای include/exclude و غیره بدون حساسیت به حروف کوچک و بزرگ باشد یا خیر.
توجه داشته باشید که هنگام استفاده از تطبیق غیرحساس به حروف کوچک و بزرگ، ممکن است نام مسیرهایی با حروف ترکیبی یا تماماً کوچک به بازخوانیهای --version-script و --annotate-script شما ارسال شوند. بازخوانیهای شما باید تفاوتهای احتمالی در حروف کوچک و بزرگ را مدیریت کنند.
پیشفرض ‘0’ است: تطبیق حساس به حروف کوچک و بزرگ.
SORT_INPUT = [0|1]
مشخص میکند که آیا نام فایلها پیش از ضبط و/یا تجمیع مرتبسازی شوند یا خیر. مرتبسازی تفاوتهای خروجی وابسته به ترتیب پردازش را کاهش میدهد - مثلاً به دلیل ابهامات موجود در دادههای شاخه تولیدشده توسط gcc.
پیشفرض ‘0’ است: بدون مرتبسازی - فایلها به ترتیبی که در خط فرمان مشخص شدهاند و/یا هنگام پیمایش سیستمفایل پیدا شدهاند، پردازش میشوند.
فایلها (FILES)
- $|TOOL_NAME|_HOME/etc/lcovrc
- فایل پیکربندی سراسری lcov در کل سیستم.
- ~/.lcovrc
- فایل پیکربندی انفرادی به ازای هر کاربر.
همچنین ببینید (SEE ALSO)
lcov(1) <file://../man/lcov.1.html>, genhtml(1) <file://../man/genhtml.1.html>, geninfo(1) <file://../man/geninfo.1.html>, gcov(1) <file://../man/gcov.1.html>
حق نشر (COPYRIGHT)
2024-2026, LCOV Project
| 2026-07-07 | 2.5 |