.\" Pipe this output to groff -m man -K utf8 -T utf8 | less -R .\" .mso an.tmac .TH "DUNE-RULES" 1 "" "Dune 3.24.2" "Dune Manual" .\" Disable hyphenation and ragged-right .nh .ad l .SH "نام (NAME)" .P dune\-rules \- برون‌ریزی قوانین ساخت .SH "خلاصه دستور (SYNOPSIS)" .P \fBdune rules\fR [\fIOPTION\fR]… [\fITARGET\fR]… .SH "توضیحات (DESCRIPTION)" .P برون‌ریزی قوانین Dune برای هدف‌های مشخص‌شده\N'46' اگر هیچ هدفی مشخص نشود، تمامی قوانین برون‌ریزی می‌شوند\N'46' .P با گزینهٔ \fB\N'45'\N'45'deps\fR، تنها وابستگی‌های قوانین منطبق چاپ می‌شوند\N'46' .P به‌طور پیش‌فرض، خروجی فهرستی از S\N'45'expressionها است، یک S\N'45'expression به ازای هر قانون\N'46' هر S\N'45'expression دارای ساختار زیر است: .P .nf ((deps ()) (targets ()) (context ) (action )) .fi .P \fB\fR بافتی (context) است که عمل در آن اجرا می‌شود\N'46' اگر عمل مستقل از بافت باشد، این مقدار حذف می‌شود\N'46' .P \fB\fR عملی است با همان ساختار نحویِ اعمال کاربری، همان‌طور که در راهنما شرح داده شده است\N'46' .P از \fB\N'45'\N'45'format=json\fR برای برون‌ریزی همین داده‌ها در قالب JSON استفاده کنید\N'46' .SH "گزینه‌ها (OPTIONS)" .TP 4 \fB\N'45'\N'45'action\N'45'stderr\N'45'on\N'45'success\fR=\fIVAL\fR مشابه \fB\N'45'\N'45'action\N'45'stdout\N'45'on\N'45'success\fR اما به‌جای خروجی استاندارد، برای خطای استاندارد اعمال می‌شود\N'46' یک مقدار پیش‌فرض مناسب برای مخازن بزرگ تک‌مخزنی (monorepos) عبارت است از \fB\N'45'\N'45'action\N'45'stdout\N'45'on\N'45'success=swallow \N'45'\N'45'action\N'45'stderr\N'45'on\N'45'success=must\N'45'be\N'45'empty\fR\N'46' این کار تضمین می‌کند که یک ساخت موفق، خروجی «تمیز» و خالی داشته باشد\N'46' .TP 4 \fB\N'45'\N'45'action\N'45'stdout\N'45'on\N'45'success\fR=\fIVAL\fR نحوهٔ برخورد با خروجی استاندارد اعمال را در صورت موفقیت مشخص می‌کند\N'46' مقادیر ممکن عبارتند از: \fBprint\fR برای چاپ صرف آن در خروجی Dune، \fBswallow\fR برای نادیده گرفتن کامل آن و \fBmust\N'45'be\N'45'empty\fR برای الزام به اینکه عمل هیچ چیزی چاپ نکرده باشد\N'46' با مقدار \fBmust\N'45'be\N'45'empty\fR، اگر عمل چیزی در خروجی استاندارد خود چاپ کند، Dune آن عمل را شکست‌خورده تلقی می‌کند\N'46' مقدار پیش‌فرض \fBprint\fR است\N'46' .TP 4 \fB\N'45'\N'45'build\N'45'info\fR نمایش اطلاعات ساخت\N'46' .TP 4 \fB\N'45'\N'45'deps\fR تنها چاپ وابستگی‌های قوانین منطبق\N'46' .TP 4 \fB\N'45'\N'45'display\N'45'separate\N'45'messages\fR جدا کردن پیام‌های خطا با یک خط خالی\N'46' .TP 4 \fB\N'45'\N'45'error\N'45'reporting\fR=\fIVAL\fR (پیش‌فرض=\fBdeterministic\fR) زمان گزارش خطاهای ساخت را کنترل می‌کند\N'46' مقدار \fBearly\fR خطاها را به محض کشف شدن گزارش می‌کند\N'46' مقدار \fBdeterministic\fR خطاها را در پایان ساخت و با ترتیبی مشخص و تکرارپذیر گزارش می‌کند\N'46' مقدار \fBtwice\fR هر خطا را دو بار گزارش می‌کند: یک بار به محض کشف خطا و بار دیگر در پایان ساخت، با ترتیبی مشخص\N'46' .TP 4 \fB\N'45'f\fR, \fB\N'45'\N'45'force\fR اجبار به اجرای مجدد اعمال مرتبط با نام‌های مستعار (aliases)، حتی اگر وابستگی‌های آن‌ها تغییری نکرده باشد\N'46' .TP 4 \fB\N'45'\N'45'file\N'45'watcher\fR=\fIVAL\fR (پیش‌فرض=\fBautomatic\fR) سازوکار تشخیص تغییرات در کد منبع\N'46' مقدار automatic باعث می‌شود dune یک برنامهٔ خارجی را برای تشخیص تغییرات اجرا کند\N'46' مقدار manual برای اطلاع‌رسانی دستی تغییر فایل‌ها به dune استفاده می‌شود\N'46' .TP 4 \fB\N'45'\N'45'format\fR=\fIFORMAT\fR (پیش‌فرض=\fBsexp\fR) مقدار \fIFORMAT\fR باید \fBsexp\fR یا \fBjson\fR باشد\N'46' .TP 4 \fB\N'45'o\fR \fIFILE\fR هدایت خروجی به یک فایل به‌جای stdout\N'46' .TP 4 \fB\N'45'\N'45'passive\N'45'watch\N'45'mode\fR مشابه [\N'45'\N'45'watch]، اما ساخت تنها زمانی آغاز می‌شود که فرمانی از خارج از طریق یک RPC ارسال شود\N'46' .TP 4 \fB\N'45'r\fR, \fB\N'45'\N'45'recursive\fR چاپ تمامی قوانین مورد نیاز برای ساخت وابستگی‌های تعدی‌پذیر (transitive dependencies) اهداف مشخص‌شده\N'46' .TP 4 \fB\N'45'\N'45'sandbox\fR=\fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_SANDBOX\fR) تنظیم حالت محدودسازی (sandboxing)\N'46' برخی اعمال نیازمند حالت خاصی از محیط ایزوله هستند و بنابراین این تنظیم را نادیده می‌گیرند\N'46' مقادیر مجاز عبارتند از: none، symlink، copy، hardlink\N'46' .TP 4 \fB\N'45'\N'45'stop\N'45'on\N'45'first\N'45'error\fR توقف فرایند ساخت به محض مواجهه با اولین خطا\N'46' .TP 4 \fB\N'45'w\fR, \fB\N'45'\N'45'watch\fR به‌جای پایان دادن به ساخت پس از اتمام، به طور مداوم منتظر تغییرات فایل‌ها می‌ماند\N'46' .TP 4 \fB\N'45'\N'45'wait\N'45'for\N'45'filesystem\N'45'clock\fR برنامهٔ Dune برای بهبود کارایی ساخت افزایشی، چکیده‌هایی (digest) از محتوای فایل‌ها تهیه می‌کند\N'46' این چکیده‌ها خود نیز ذخیرهٔ موقت (کَش) می‌شوند\N'46' در برخی موارد، Dune برای حفظ قابلیت اطمینان، نیازمند حذف برخی از مدخل‌های حافظهٔ موقت چکیده است\N'46' این گزینه Dune را وادار می‌کند تا منتظر پیشروی ساعت سامانهٔ فایل بماند تا نیازی به دور ریختن هیچ موردی نداشته باشد\N'46' احتمالاً نیازی به استفاده از این گزینه نخواهید داشت؛ این گزینه بیشتر برای توسعه‌دهندگان Dune کاربرد دارد تا آزمون‌های حافظهٔ موقت چکیده تکرارپذیرتر شوند\N'46' .SH "گزینه‌های عمومی (COMMON OPTIONS)" .P این گزینه‌ها میان تمامی دستورها مشترک هستند\N'46' .TP 4 \fB\N'45'\N'45'always\N'45'show\N'45'command\N'45'line\fR همیشه خط فرمان کامل برنامه‌های اجراشده توسط dune را نمایش می‌دهد\N'46' .TP 4 \fB\N'45'\N'45'auto\N'45'promote\fR ارتقای خودکار فایل‌ها (promote)\N'46' این گزینه مشابه اجرای \fBdune promote\fR پس از ساخت است\N'46' .TP 4 \fB\N'45'\N'45'build\N'45'dir\fR=\fIFILE\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_BUILD_DIR\fR) دایرکتوری ساخت مشخص‌شده\N'46' در صورت مشخص نشدن، مقدار پیش‌فرض _build است\N'46' .TP 4 \fB\N'45'\N'45'cache\fR=\fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_CACHE\fR) فعال یا غیرفعال کردن حافظهٔ موقت Dune (یکی از مقادیر \fBdisabled\fR، \fBenabled\N'45'except\N'45'user\N'45'rules\fR یا \fBenabled\fR)\N'46' پیش‌فرض `enabled\N'45'except\N'45'user\N'45'rules\N'39' است\N'46' .TP 4 \fB\N'45'\N'45'cache\N'45'check\N'45'probability\fR=\fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_CACHE_CHECK_PROBABILITY\fR) بررسی تکرارپذیری ساخت از طریق اجرای مجدد قوانین تصادفی انتخاب‌شده و مقایسهٔ نتایج آن‌ها با موارد ذخیره‌شده در حافظهٔ موقت Dune\N'46' نکته: افزایش احتمال این بررسی‌ها سرعت ساخت را کاهش می‌دهد\N'46' احتمال پیش‌فرض صفر است، یعنی هیچ قانونی بررسی نمی‌شود\N'46' .TP 4 \fB\N'45'\N'45'cache\N'45'storage\N'45'mode\fR=\fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_CACHE_STORAGE_MODE\fR) حالت ذخیره‌سازی حافظهٔ موقت Dune (یکی از مقادیر \fBauto\fR، \fBhardlink\fR یا \fBcopy\fR)\N'46' پیش‌فرض `hardlink\N'39' است\N'46' .TP 4 \fB\N'45'\N'45'config\N'45'file\fR=\fIFILE\fR بارگذاری این فایل پیکربندی به‌جای فایل پیش‌فرض\N'46' .TP 4 \fB\N'45'\N'45'debug\N'45'backtraces\fR همیشه ردگیری بازگشتی (backtrace) استثناها را چاپ می‌کند\N'46' .TP 4 \fB\N'45'\N'45'debug\N'45'dependency\N'45'path\fR در صورت بروز خطا، مسیر وابستگی را از هدف‌های خط فرمان تا قانونی که شکست خورده چاپ می‌کند\N'46' .TP 4 \fB\N'45'\N'45'debug\N'45'package\N'45'logs\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_DEBUG_PACKAGE_LOGS\fR) همیشه گزارش‌های استاندارد را هنگام ساخت بسته‌ها چاپ می‌کند\N'46' .TP 4 \fB\N'45'\N'45'default\N'45'target\fR=\fITARGET\fR (پیش‌فرض=\fB@@default\fR) تنظیم هدف پیش‌فرضی که در صورت مشخص نشدن هیچ هدفی برای \fBdune build\fR استفاده می‌شود\N'46' .TP 4 \fB\N'45'\N'45'diff\N'45'command\fR=\fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_DIFF_COMMAND\fR) دستور پوسته برای مقایسهٔ تفاوت فایل‌ها\N'46' برای غیرفعال کردن چاپ تفاوت، از \N'45' استفاده کنید\N'46' .TP 4 \fB\N'45'\N'45'disable\N'45'promotion\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_DISABLE_PROMOTION\fR) غیرفعال کردن تمامی قوانین ارتقا\N'46' .TP 4 \fB\N'45'\N'45'display\fR=\fIMODE\fR کنترل حالت نمایش Dune\N'46' برای جزئیات بیشتر به \fBdune\N'45'config(5)\fR مراجعه کنید\N'46' مقادیر معتبر عبارتند از: progress، verbose، short، quiet یا tui\N'46' .TP 4 \fB\N'45'\N'45'dump\N'45'gc\N'45'stats\fR=\fIFILE\fR برون‌ریزی آمار زباله‌روب (GC) در یک فایل پس از اتمام ساخت\N'46' .TP 4 \fB\N'45'\N'45'help\fR[=\fIFMT\fR] (پیش‌فرض=\fBauto\fR) نمایش این راهنما در قالب \fIFMT\fR\N'46' مقدار \fIFMT\fR باید یکی از مقادیر \fBauto\fR، \fBpager\fR، \fBgroff\fR یا \fBplain\fR باشد\N'46' با انتخاب \fBauto\fR، در صورتی که متغیر محیطی \fBTERM\fR برابر \fBdumb\fR یا تعریف‌نشده باشد، قالب به صورت \fBpager\fR یا \fBplain\fR خواهد بود\N'46' .TP 4 \fB\N'45'\N'45'ignore\N'45'promoted\N'45'rules\fR نادیده گرفتن قوانین با حالت (mode promote)، به جز مواردی که دارای (only \N'46'\N'46'\N'46') هستند\N'46' متغیر %{ignoring_promoted_rules} در فایل‌های dune مشخص‌کنندهٔ ارسال یا عدم ارسال این گزینه است\N'46' .TP 4 \fB\N'45'\N'45'instrument\N'45'with\fR=\fIBACKENDS\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_INSTRUMENT_WITH\fR) فعال‌سازی ابزاردقیق‌سازی توسط \fBBACKENDS\fR\N'46' مقدار \fBBACKENDS\fR فهرستی جداشده با کاما از نام کتابخانه‌هاست که هر یک باید یک پسانهٔ ابزاردقیق‌سازی تعریف کرده باشند\N'46' .TP 4 \fB\N'45'j\fR \fIJOBS\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_JOBS\fR) عدم اجرای هم‌زمان بیش از \fIJOBS\fR دستور\N'46' مقدار \fIJOBS\fR باید یک عدد صحیح مثبت یا \fBauto\fR برای تشخیص خودکار تعداد هسته‌ها (پیش‌فرض) باشد\N'46' .TP 4 \fB\N'45'\N'45'no\N'45'buffer\fR عدم بافر کردن خروجی دستورهای اجراشده توسط dune\N'46' به‌طور پیش‌فرض dune خروجی زیردستورها را بافر می‌کند تا از درهم‌آمیختگی خروجی‌ها هنگام اجرای موازی چندین دستور جلوگیری شود\N'46' با این حال، این مسئله ممکن است هنگام اشکال‌زدایی آزمون‌های طولانی مشکل‌ساز شود\N'46' با گزینهٔ \fB\N'45'\N'45'no\N'45'buffer\fR، دستورها دسترسی مستقیم به ترمینال دارند\N'46' توجه داشته باشید که در نتیجه خروجی آن‌ها در فایل وقایع (log) ذخیره نخواهد شد\N'46' برای جلوگیری از تداخل خروجی‌ها، باید از این گزینه همراه با \fB\N'45'j 1\fR استفاده کنید\N'46' علاوه بر این، باید از \fB\N'45'\N'45'verbose\fR نیز استفاده شود تا اطمینان حاصل شود که دستورها پیش از اجرا چاپ می‌شوند\N'46' .TP 4 \fB\N'45'\N'45'no\N'45'config\fR عدم بارگذاری فایل پیکربندی\N'46' .TP 4 \fB\N'45'\N'45'no\N'45'print\N'45'directory\fR جلوگیری از نمایش پیام‌های «Entering directory»\N'46' .TP 4 \fB\N'45'\N'45'only\N'45'packages\fR=\fIPACKAGES\fR نادیده گرفتن بندهایی (stanzas) که به بسته‌ای ارجاع می‌دهند که در \fBPACKAGES\fR نیست\N'46' مقدار \fBPACKAGES\fR فهرستی جداشده با کاما از نام بسته‌هاست\N'46' توجه داشته باشید که این کار اثری مشابه حذف بندهای مربوطه از فایل‌های dune دارد\N'46' این گزینه عمدتاً برای انتشار نسخه‌ها کاربرد دارد\N'46' در طول توسعه، احتمالاً آنچه می‌خواهید ساخت یک هدف خاص \fB\N'46'install\fR است\N'46' .TP 4 \fB\N'45'p\fR \fIPACKAGES\fR, \fB\N'45'\N'45'for\N'45'release\N'45'of\N'45'packages\fR=\fIPACKAGES\fR (الزامی) کوتاه‌نوشتی برای \fB\N'45'\N'45'release \N'45'\N'45'pkg=disabled \N'45'\N'45'only\N'45'packages PACKAGE\fR\N'46' زمانی که پروژه شامل چندین بسته است، باید از این گزینه در فایل‌های \fI\N'46'opam\fR خود استفاده کنید تا تنها موارد ضروری ساخته شوند و ساخت‌های تکرارپذیر حاصل گردد\N'46' .TP 4 \fB\N'45'\N'45'pkg\fR=\fIVAL\fR فعال یا غیرفعال کردن مدیریت بسته\N'46' رفتار پیش‌فرض به وجود یا عدم وجود یک دایرکتوری قفل (lock) بستگی دارد\N'46' .TP 4 \fB\N'45'\N'45'profile\fR=\fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_PROFILE\fR) انتخاب نمایهٔ ساخت (profile)، برای نمونه \fBdev\fR یا \fBrelease\fR\N'46' مقدار پیش‌فرض \fBdev\fR است\N'46' .TP 4 \fB\N'45'\N'45'promote\N'45'install\N'45'files\fR[=\fIVAL\fR] (پیش‌فرض=\fBtrue\fR) ارتقای هرگونه فایل تولیدشدهٔ \N'46'install به درخت منبع\N'46' .TP 4 \fB\N'45'\N'45'release\fR قرار دادن \fBdune\fR در حالت انتشار (\fIrelease\fR) تکرارپذیر\N'46' کوتاه‌نوشتی برای \fB\N'45'\N'45'root \N'46' \N'45'\N'45'ignore\N'45'promoted\N'45'rules \N'45'\N'45'no\N'45'config \N'45'\N'45'profile release \N'45'\N'45'always\N'45'show\N'45'command\N'45'line \N'45'\N'45'promote\N'45'install\N'45'files \N'45'\N'45'require\N'45'dune\N'45'project\N'45'file \N'45'\N'45'default\N'45'target @install\fR\N'46' باید از این گزینه برای ساخت‌های انتشار استفاده کنید\N'46' به عنوان نمونه، باید از این گزینه در فایل‌های \fI\N'46'opam\fR خود استفاده نمایید\N'46' مگر اینکه پیش‌تر از \fB\N'45'p\fR استفاده کرده باشید، زیرا \fB\N'45'p\fR شامل این گزینه نیز می‌شود\N'46' .TP 4 \fB\N'45'\N'45'require\N'45'dune\N'45'project\N'45'file\fR[=\fIVAL\fR] (پیش‌فرض=\fBtrue\fR) شکست در صورت عدم وجود فایل dune\N'45'project\N'46' .TP 4 \fB\N'45'\N'45'root\fR=\fIDIR\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_ROOT\fR) استفاده از این دایرکتوری به عنوان ریشهٔ فضای کاری به‌جای حدس زدن آن\N'46' توجه داشته باشید که این گزینه معنای اهداف ارائه‌شده در خط فرمان را تغییر نمی‌دهد\N'46' این گزینه فقط برای اسکریپت‌ها در نظر گرفته شده است\N'46' .TP 4 \fB\N'45'\N'45'store\N'45'orig\N'45'source\N'45'dir\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_STORE_ORIG_SOURCE_DIR\fR) ذخیرهٔ مکان منبع اصلی در فرادادهٔ dune\N'45'package\N'46' .TP 4 \fB\N'45'\N'45'target\N'45'exec\fR=\fITOOLCHAIN=CMD\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_TARGET_EXEC\fR) دستور پوششی (wrapper) برای اجرای دودویی‌های هدف هنگام کامپایل متقابل\N'46' قالب: TOOLCHAIN=CMD (برای نمونه، \N'39'windows=wine\N'39')\N'46' .TP 4 \fB\N'45'\N'45'terminal\N'45'persistence\fR=\fIMODE\fR تغییر نحوهٔ نمایش گزارش نتایج ساخت در کنسول میان ساخت‌های متوالی در حالت \fB\N'45'\N'45'watch\fR\N'46' حالت‌های پشتیبانی‌شده: \fBpreserve\fR، \fBclear\N'45'on\N'45'rebuild\fR، \fBclear\N'45'on\N'45'rebuild\N'45'and\N'45'flush\N'45'history\fR\N'46' .TP 4 \fB\N'45'\N'45'trace\N'45'file\fR=\fIFILE\fR خروجی داده‌های ردگیری (trace) در قالب catapult (سازگار با chrome://tracing)\N'46' .TP 4 \fB\N'45'\N'45'verbose\fR مشابه \fB\N'45'\N'45'display verbose\fR .TP 4 \fB\N'45'\N'45'version\fR نمایش اطلاعات نسخه\N'46' .TP 4 \fB\N'45'\N'45'watch\N'45'exclusions\fR=\fIREGEX\fR افزودن یک عبارت باقاعدهٔ POSIX که دایرکتوری‌های منطبق را از \fB`dune build \N'45'\N'45'watch`\fR مستثنا می‌کند\N'46' گزینهٔ \fB\N'45'\N'45'watch\N'45'exclusions\fR می‌تواند برای افزودن چندین استثنا تکرار شود\N'46' همچنین می‌توان از نقطه\-ویرگول به عنوان جداکننده استفاده کرد\N'46' اگر هیچ استثنایی مشخص نشود، مجموعه‌ای استاندارد از استثناها اعمال می‌شود؛ اما اگر \fIیک یا چند\fR گزینهٔ \fB\N'45'\N'45'watch\N'45'exclusions\fR به کار رود، \fBهیچ‌یک\fR از استثناهای استاندارد اعمال نخواهند شد\N'46' استثناهای استاندارد عبارتند از: ^_opam /_opam ^_esy /_esy ^\N'92'\N'46'#\N'46'* /\N'92'\N'46'#\N'46'* ~$ ^#[^#]*#$ /#[^#]*#$ ^4913$ /4913$ /\N'46'git /\N'46'hg :/windows .TP 4 \fB\N'45'\N'45'workspace\fR=\fIFILE\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_WORKSPACE\fR) استفاده از این فایل خاص فضای کاری به‌جای جستجوی آن\N'46' .TP 4 \fB\N'45'x\fR \fIVAL\fR (در صورت عدم وجود متغیر محیطی \fBDUNE_CROSS_TARGET\fR) کامپایل متقابل با استفاده از این زنجیره ابزار (toolchain)\N'46' .SH "راهنمای بیشتر (MORE HELP)" .P برای راهنمایی دربارهٔ یک دستور خاص، از `\fBdune\fR \fICOMMAND\fR \N'45'\N'45'help\N'39' استفاده کنید\N'46' .SH "وضعیت خروج (EXIT STATUS)" .P دستور \fBdune rules\fR با این کدها خارج می‌شود: .TP 4 0 در صورت موفقیت\N'46' .TP 4 1 در صورت بروز خطا\N'46' .TP 4 130 در صورتی که توسط یک سیگنال متوقف شود\N'46' .SH "محیط (ENVIRONMENT)" .P این متغیرهای محیطی بر اجرای \fBrules\fR تأثیر می‌گذارند: .TP 4 \fBDUNE_BUILD_DIR\fR دایرکتوری ساخت مشخص‌شده\N'46' در صورت مشخص نشدن، مقدار پیش‌فرض _build است\N'46' .TP 4 \fBDUNE_CACHE\fR فعال یا غیرفعال کردن حافظهٔ موقت Dune (یکی از مقادیر \fBdisabled\fR، \fBenabled\N'45'except\N'45'user\N'45'rules\fR یا \fBenabled\fR)\N'46' پیش‌فرض `enabled\N'45'except\N'45'user\N'45'rules\N'39' است\N'46' .TP 4 \fBDUNE_CACHE_CHECK_PROBABILITY\fR بررسی تکرارپذیری ساخت از طریق اجرای مجدد قوانین تصادفی انتخاب‌شده و مقایسهٔ نتایج آن‌ها با موارد ذخیره‌شده در حافظهٔ موقت Dune\N'46' نکته: افزایش احتمال این بررسی‌ها سرعت ساخت را کاهش می‌دهد\N'46' احتمال پیش‌فرض صفر است، یعنی هیچ قانونی بررسی نمی‌شود\N'46' .TP 4 \fBDUNE_CACHE_STORAGE_MODE\fR حالت ذخیره‌سازی حافظهٔ موقت Dune (یکی از مقادیر \fBauto\fR، \fBhardlink\fR یا \fBcopy\fR)\N'46' پیش‌فرض `hardlink\N'39' است\N'46' .TP 4 \fBDUNE_CROSS_TARGET\fR کامپایل متقابل با استفاده از این زنجیره ابزار\N'46' .TP 4 \fBDUNE_DEBUG_PACKAGE_LOGS\fR همیشه گزارش‌های استاندارد را هنگام ساخت بسته‌ها چاپ می‌کند\N'46' .TP 4 \fBDUNE_DIFF_COMMAND\fR دستور پوسته برای مقایسهٔ تفاوت فایل‌ها\N'46' برای غیرفعال کردن چاپ تفاوت، از \N'45' استفاده کنید\N'46' .TP 4 \fBDUNE_DISABLE_PROMOTION\fR غیرفعال کردن تمامی قوانین ارتقا\N'46' .TP 4 \fBDUNE_INSTRUMENT_WITH\fR فعال‌سازی ابزاردقیق‌سازی توسط \fBBACKENDS\fR\N'46' مقدار \fBBACKENDS\fR فهرستی جداشده با کاما از نام کتابخانه‌هاست که هر یک باید یک پسانهٔ ابزاردقیق‌سازی تعریف کرده باشند\N'46' .TP 4 \fBDUNE_JOBS\fR عدم اجرای هم‌زمان بیش از \fIJOBS\fR دستور\N'46' مقدار \fIJOBS\fR باید یک عدد صحیح مثبت یا \fBauto\fR برای تشخیص خودکار تعداد هسته‌ها (پیش‌فرض) باشد\N'46' .TP 4 \fBDUNE_PROFILE\fR نمایهٔ ساخت\N'46' در صورت مشخص نشدن برابر با \fBdev\fR، یا اگر \N'45'p تعیین شده باشد \fBrelease\fR خواهد بود\N'46' .TP 4 \fBDUNE_ROOT\fR استفاده از این دایرکتوری به عنوان ریشهٔ فضای کاری به‌جای حدس زدن آن\N'46' توجه داشته باشید که این گزینه معنای اهداف ارائه‌شده در خط فرمان را تغییر نمی‌دهد؛ این گزینه تنها برای اسکریپت‌ها در نظر گرفته شده است\N'46' .TP 4 \fBDUNE_SANDBOX\fR حالت محدودسازی پیش‌فرض مورد استفاده\N'46' (گزینهٔ \N'45'\N'45'sandbox را ببینید) .TP 4 \fBDUNE_STORE_ORIG_SOURCE_DIR\fR ذخیرهٔ مکان منبع اصلی در فرادادهٔ dune\N'45'package\N'46' .TP 4 \fBDUNE_TARGET_EXEC\fR دستور پوششی برای اجرای دودویی‌های هدف هنگام کامپایل متقابل\N'46' قالب: TOOLCHAIN=CMD (برای نمونه، \N'39'windows=wine\N'39')\N'46' .TP 4 \fBDUNE_WORKSPACE\fR استفاده از این فایل خاص فضای کاری به‌جای جستجوی آن\N'46' .SH "گزارش باگ‌ها (BUGS)" .P گزارش‌های باگ را در https://github\N'46'com/ocaml/dune/issues بررسی کنید .SH "همچنین ببینید (SEE ALSO)" .P dune(1)