மீசன் உருவாக்க அமைப்பு வெளியீடு 1.1

X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME மற்றும் GTK போன்ற திட்டங்களை உருவாக்க பயன்படும் Meson 1.1.0 பில்ட் சிஸ்டத்தின் வெளியீடு வெளியிடப்பட்டது. மீசன் குறியீடு பைத்தானில் எழுதப்பட்டுள்ளது மற்றும் Apache 2.0 உரிமத்தின் கீழ் உரிமம் பெற்றது.

Meson இன் முக்கிய வளர்ச்சி இலக்கு, வசதி மற்றும் பயன்பாட்டின் எளிமையுடன் கூடிய அதிவேக அசெம்பிளி செயல்முறையை வழங்குவதாகும். உருவாக்குவதற்குப் பதிலாக, உருவாக்கமானது இயல்புநிலையாக நிஞ்ஜா கருவித்தொகுப்பைப் பயன்படுத்துகிறது, ஆனால் xcode மற்றும் VisualStudio போன்ற பிற பின்தளங்களையும் பயன்படுத்தலாம். கணினியில் உள்ளமைக்கப்பட்ட மல்டி-பிளாட்ஃபார்ம் சார்பு ஹேண்ட்லர் உள்ளது, இது விநியோகங்களுக்கான தொகுப்புகளை உருவாக்க Meson ஐப் பயன்படுத்த உங்களை அனுமதிக்கிறது. சட்டசபை விதிகள் எளிமைப்படுத்தப்பட்ட டொமைன்-குறிப்பிட்ட மொழியில் அமைக்கப்பட்டுள்ளன, அவை நன்கு படிக்கக்கூடியவை மற்றும் பயனருக்கு புரிந்துகொள்ளக்கூடியவை (ஆசிரியர்களின் யோசனையின்படி, டெவலப்பர் விதிகளை எழுதுவதற்கு குறைந்தபட்ச நேரத்தை செலவிட வேண்டும்).

GCC, Clang, Visual Studio மற்றும் பிற கம்பைலர்களைப் பயன்படுத்தி Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS மற்றும் Windows ஆகியவற்றில் குறுக்கு-தொகுத்தல் மற்றும் உருவாக்குதல் ஆதரிக்கப்படுகிறது. C, C++, Fortran, Java மற்றும் Rust உள்ளிட்ட பல்வேறு நிரலாக்க மொழிகளில் திட்டங்களை உருவாக்க முடியும். ஒரு அதிகரிக்கும் உருவாக்க முறை ஆதரிக்கப்படுகிறது, இதில் கடைசி கட்டத்திலிருந்து செய்யப்பட்ட மாற்றங்களுடன் நேரடியாக தொடர்புடைய கூறுகள் மட்டுமே மீண்டும் கட்டமைக்கப்படுகின்றன. மீசான் மீண்டும் மீண்டும் உருவாக்கக்கூடிய கட்டமைப்பை உருவாக்கப் பயன்படுத்தப்படலாம், அங்கு வெவ்வேறு சூழல்களில் உருவாக்கத்தை இயக்குவது முற்றிலும் ஒரே மாதிரியான இயங்குதளங்களில் விளைகிறது.

மீசன் 1.1 இன் முக்கிய கண்டுபிடிப்புகள்:

  • ஒரு புதிய "objects:" வாதம் declare_dependency() இல் சேர்க்கப்பட்டது, இது link_who தேவையில்லாத உள் சார்புகளாக இயங்கக்கூடியவற்றுடன் பொருட்களை நேரடியாக இணைக்கிறது.
  • "meson devenv --dump" கட்டளையானது நிலையான வெளியீட்டு ஸ்ட்ரீமில் வெளியிடுவதற்குப் பதிலாக, சூழல் மாறிகளை எழுத ஒரு கோப்பைக் குறிப்பிடுவதற்கான விருப்பத் திறனைக் கொண்டுள்ளது.
  • சார்பு() செயல்பாட்டிற்கு அளவுருக்களை அனுப்புவதற்கான தயாரிப்பில் நிபந்தனைகளை உருவாக்குவதை எளிதாக்க FeatureOption.enable_if மற்றும் FeatureOption.disable_if முறைகள் சேர்க்கப்பட்டது. opt = get_option('feature').disable_if(foo அல்ல, error_message : 'foo இயக்கப்படாத போது அம்சத்தை இயக்க முடியாது') dep = சார்பு('foo', தேவை : opt)
  • "பொருள்கள்:" வாதங்களுக்கு மத்தியில் உருவாக்கப்பட்ட பொருட்களை அனுப்ப இது அனுமதிக்கப்படுகிறது.
  • திட்ட செயல்பாடு, திட்ட உரிமங்கள் பற்றிய தகவல்களுடன் கோப்புகளை நிறுவுவதை ஆதரிக்கிறது.
  • "sudo meson install"ஐ இயக்குவது, இலக்கு தளங்களுக்கான மறுகட்டமைப்பின் போது சிறப்புரிமை மீட்டமைப்பை உறுதி செய்கிறது.
  • "meson install" கட்டளையானது, ரூட் அனுமதிகளைப் பெறுவதற்கு ஒரு தனி ஹேண்ட்லரைக் குறிப்பிடும் திறனை வழங்குகிறது (உதாரணமாக, நீங்கள் polkit, sudo, opendoas அல்லது $MESON_ROOT_CMD ஐ தேர்ந்தெடுக்கலாம்). ஊடாடாத பயன்முறையில் "மீசன் நிறுவலை" இயக்குவது இனி சிறப்புரிமைகளை உயர்த்த முயற்சிக்காது.
  • meson_options.txt க்குப் பதிலாக meson.options கோப்பிலிருந்து விருப்பங்களைப் படிப்பதற்கான ஆதரவு சேர்க்கப்பட்டது.
  • சுயபரிசோதனையின் முன்னேற்றம் பற்றிய தகவலின் வெளியீட்டை stderr க்கு திருப்பிவிடப்பட்டது.
  • ஒரு புதிய "இல்லை" பின்தளம் (--backend=none) சேர்க்கப்பட்டது, அவை விதிகளை மட்டும் நிறுவும் மற்றும் உருவாக்க விதிகள் இல்லை.
  • pybind11-config ஸ்கிரிப்டைப் பயன்படுத்தாமல் pkg-config மற்றும் cmake உடன் சார்பு('pybind11') வேலை செய்ய புதிய சார்பு pybind11 சேர்க்கப்பட்டுள்ளது.
  • "--reconfigure" மற்றும் "--wipe" விருப்பங்கள் (meson setup --reconfigure builddir மற்றும் meson setup --wipe builddir ) வெற்று பில்டிருடன் அனுமதிக்கப்படுகிறது.
  • meson.add_install_script() dry_run முக்கிய சொல்லுக்கான ஆதரவைச் சேர்த்தது, இது "meson install --dry-run" என அழைக்கும் போது உங்கள் சொந்த நிறுவல் ஸ்கிரிப்ட்களை இயக்க அனுமதிக்கிறது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்