د میسن جوړونې سیسټم خوشې کول 1.0

د Meson 1.0.0 جوړونې سیسټم خپور شوی، کوم چې د پروژې جوړولو لپاره کارول کیږي لکه X.Org سرور، میسا، لایټhttpd، systemd، GStreamer، Wayland، GNOME او GTK. د میسن کوډ په Python کې لیکل شوی او د اپاچي 2.0 جواز لاندې جواز لري.

د میسون کلیدي پراختیا هدف د اسانتیا او کارولو اسانتیا سره یوځای د لوړ سرعت مجلس پروسې چمتو کول دي. د جوړیدو پرځای، جوړونه د ډیفالټ په واسطه د نینجا اوزار کټ کاروي، مګر نور بیکینډونه لکه xcode او VisualStudio هم کارول کیدی شي. سیسټم یو جوړ شوی ملټي پلیټ فارم انحصار هینډلر لري چې تاسو ته اجازه درکوي د توزیع لپاره کڅوړو جوړولو لپاره میسن وکاروئ. د مجلس قواعد په ساده ډومین ځانګړي ژبه کې تنظیم شوي ، دوی د کارونکي لپاره ښه لوستل او د پوهیدو وړ دي (د لیکوالانو د نظر له مخې ، پراختیا کونکی باید لږترلږه وخت د قواعدو لیکلو کې مصرف کړي).

په لینکس، Illumos/Solaris، FreeBSD، NetBSD، DragonFly BSD، Haiku، macOS او وینډوز کې د GCC، کلینګ، ویژول سټوډیو او نورو تالیف کونکو په کارولو سره کراس تالیف کول او جوړول ملاتړ کیږي. دا ممکنه ده چې پروژې په مختلفو پروګرامینګ ژبو کې جوړې کړئ، په شمول د C، C++، Fortran، Java او Rust. د زیاتیدونکي جوړونې حالت ملاتړ کیږي ، په کوم کې چې یوازې هغه برخې چې د وروستي جوړیدو راهیسې رامینځته شوي بدلونونو سره مستقیم تړاو لري بیا رغول کیږي. میسن د تکرار وړ جوړونو رامینځته کولو لپاره کارول کیدی شي ، چیرې چې په مختلف چاپیریالونو کې د جوړونې چلولو پایله په بشپړ ډول ورته اجرا کونکي تولید کیږي.

د میسون 1.0 اصلي نوښتونه:

  • د زنګ په ژبه کې د پروژو جوړولو لپاره یو ماډل باثباته اعلان شوی. دا ماډل په میسا پروژه کې کارول کیږي ترڅو په زنګ کې لیکل شوي اجزاو رامینځته کړي.
  • د مخفف اختیار، چې په ډیری کمپیلر چیک افعال کې ملاتړ شوی، د تارونو سربیره د صفونو اداره کولو وړتیا چمتو کوي. د مثال په توګه، تاسو اوس مشخص کولی شئ: cc.check_header('GL/wglew.h'، مخفف: ['#شامل '، # شامل دي '])
  • نوی دلیل "--workdir" اضافه کړ ترڅو د کاري لارښود ته اجازه ورکړي. د مثال په توګه ، د کاري لارښود پرځای د اوسني لارښود کارولو لپاره ، تاسو کولی شئ چلولی شئ: meson devenv -C builddir --workdir.
  • نوي آپریټرونه "in" او "نه کې" وړاندیز شوي ترڅو په تار کې د فرعي سټینګ شتون وټاکي، لکه څنګه چې په سري یا لغت کې د عنصر شتون لپاره پخوا موجود چیک ته ورته دی. د مثال په توګه: fs = import('fs') که 'something' in fs.read('somefile') # ریښتیني endif
  • د "خبرتیا کچه = هرڅه" اختیار اضافه شوی، کوم چې د ټولو موجود کمپیلر خبرتیاو محصول بدلوي (په کلینګ او MSVC کې دا کاروي -Weverything او /Wall، او په GCC کې اخطارونه په جلا توګه شامل شوي، نږدې د -Weverything سره مطابقت لري په کلنګ کې حالت).
  • د rust.bindgen میتود د انحصار لارې تیرولو لپاره د "انحصار" دلیل اداره کولو وړتیا پلي کوي چې باید د کمپیلر لخوا پروسس شي.
  • د java.generate_native_headers فنکشن له مینځه وړل شوی او java.native_headers ته یې نوم ورکړل شوی ترڅو د میسن د عام فعالیت نومونې سټایل سره مطابقت ولري.

سرچینه: opennet.ru

Add a comment