Meson 1.0 ಅಸೆಂಬ್ಲಿ ಸಿಸ್ಟಮ್‌ನ ಬಿಡುಗಡೆ

X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ಮತ್ತು GTK ಯಂತಹ ಪ್ರಾಜೆಕ್ಟ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಬಳಸಲಾಗುವ Meson 1.0.0 ಬಿಲ್ಡ್ ಸಿಸ್ಟಮ್‌ನ ಬಿಡುಗಡೆಯನ್ನು ಪ್ರಕಟಿಸಲಾಗಿದೆ. ಮೆಸನ್ ಕೋಡ್ ಅನ್ನು ಪೈಥಾನ್‌ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು ಅಪಾಚೆ 2.0 ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ಪರವಾನಗಿ ಪಡೆದಿದೆ.

ಮೆಸನ್‌ನ ಪ್ರಮುಖ ಅಭಿವೃದ್ಧಿ ಗುರಿಯು ಅನುಕೂಲತೆ ಮತ್ತು ಬಳಕೆಯ ಸುಲಭತೆಯೊಂದಿಗೆ ಹೆಚ್ಚಿನ ವೇಗದ ಜೋಡಣೆ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಒದಗಿಸುವುದು. ತಯಾರಿಕೆಯ ಬದಲಿಗೆ, ನಿರ್ಮಾಣವು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ನಿಂಜಾ ಟೂಲ್ಕಿಟ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಆದರೆ xcode ಮತ್ತು VisualStudio ನಂತಹ ಇತರ ಬ್ಯಾಕೆಂಡ್ಗಳನ್ನು ಸಹ ಬಳಸಬಹುದು. ವ್ಯವಸ್ಥೆಯು ಅಂತರ್ನಿರ್ಮಿತ ಬಹು-ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಅವಲಂಬನೆ ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ಹೊಂದಿದೆ ಅದು ವಿತರಣೆಗಳಿಗಾಗಿ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಮೆಸನ್ ಅನ್ನು ಬಳಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಅಸೆಂಬ್ಲಿ ನಿಯಮಗಳನ್ನು ಸರಳೀಕೃತ ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಯಲ್ಲಿ ಹೊಂದಿಸಲಾಗಿದೆ, ಅವುಗಳು ಚೆನ್ನಾಗಿ ಓದಬಲ್ಲವು ಮತ್ತು ಬಳಕೆದಾರರಿಗೆ ಅರ್ಥವಾಗುವಂತಹವು (ಲೇಖಕರ ಕಲ್ಪನೆಯ ಪ್ರಕಾರ, ಡೆವಲಪರ್ ನಿಯಮಗಳನ್ನು ಬರೆಯಲು ಕನಿಷ್ಠ ಸಮಯವನ್ನು ಕಳೆಯಬೇಕು).

GCC, ಕ್ಲಾಂಗ್, ವಿಷುಯಲ್ ಸ್ಟುಡಿಯೋ ಮತ್ತು ಇತರ ಕಂಪೈಲರ್‌ಗಳನ್ನು ಬಳಸಿಕೊಂಡು Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ಮತ್ತು Windows ನಲ್ಲಿ ಕ್ರಾಸ್-ಕಂಪೈಲಿಂಗ್ ಮತ್ತು ಬಿಲ್ಡಿಂಗ್ ಬೆಂಬಲಿತವಾಗಿದೆ. C, C++, Fortran, Java ಮತ್ತು Rust ಸೇರಿದಂತೆ ವಿವಿಧ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳಲ್ಲಿ ಯೋಜನೆಗಳನ್ನು ನಿರ್ಮಿಸಲು ಸಾಧ್ಯವಿದೆ. ಹೆಚ್ಚುತ್ತಿರುವ ಬಿಲ್ಡ್ ಮೋಡ್ ಅನ್ನು ಬೆಂಬಲಿಸಲಾಗುತ್ತದೆ, ಇದರಲ್ಲಿ ಕೊನೆಯ ನಿರ್ಮಾಣದಿಂದ ಮಾಡಿದ ಬದಲಾವಣೆಗಳಿಗೆ ನೇರವಾಗಿ ಸಂಬಂಧಿಸಿದ ಘಟಕಗಳನ್ನು ಮಾತ್ರ ಮರುನಿರ್ಮಾಣ ಮಾಡಲಾಗುತ್ತದೆ. ಪುನರಾವರ್ತನೀಯ ಬಿಲ್ಡ್‌ಗಳನ್ನು ಉತ್ಪಾದಿಸಲು ಮೆಸಾನ್ ಅನ್ನು ಬಳಸಬಹುದು, ಅಲ್ಲಿ ವಿಭಿನ್ನ ಪರಿಸರಗಳಲ್ಲಿ ಬಿಲ್ಡ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡುವುದರಿಂದ ಸಂಪೂರ್ಣವಾಗಿ ಒಂದೇ ರೀತಿಯ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಗೆ ಕಾರಣವಾಗುತ್ತದೆ.

Meson 1.0 ನ ಮುಖ್ಯ ಆವಿಷ್ಕಾರಗಳು:

  • ರಸ್ಟ್ ಭಾಷೆಯಲ್ಲಿ ನಿರ್ಮಾಣ ಯೋಜನೆಗಳಿಗೆ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಸ್ಥಿರವೆಂದು ಘೋಷಿಸಲಾಗಿದೆ. ರಸ್ಟ್‌ನಲ್ಲಿ ಬರೆದ ಘಟಕಗಳನ್ನು ನಿರ್ಮಿಸಲು ಈ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಮೆಸಾ ಯೋಜನೆಯಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ.
  • ಹೆಚ್ಚಿನ ಕಂಪೈಲರ್ ಚೆಕ್ ಕಾರ್ಯಗಳಲ್ಲಿ ಬೆಂಬಲಿತವಾದ ಪೂರ್ವಪ್ರತ್ಯಯ ಆಯ್ಕೆಯು ಸ್ಟ್ರಿಂಗ್‌ಗಳ ಜೊತೆಗೆ ಅರೇಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ನೀವು ಈಗ ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು: cc.check_header(‘GL/wglew.h’, ಪೂರ್ವಪ್ರತ್ಯಯ : [‘#include ’, ‘#include ’])
  • ವರ್ಕಿಂಗ್ ಡೈರೆಕ್ಟರಿಯನ್ನು ಅತಿಕ್ರಮಿಸಲು ಅನುಮತಿಸಲು ಹೊಸ ಆರ್ಗ್ಯುಮೆಂಟ್ "--workdir" ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ. ಉದಾಹರಣೆಗೆ, ವರ್ಕಿಂಗ್ ಡೈರೆಕ್ಟರಿಯ ಬದಲಿಗೆ ಪ್ರಸ್ತುತ ಡೈರೆಕ್ಟರಿಯನ್ನು ಬಳಸಲು, ನೀವು ಚಲಾಯಿಸಬಹುದು: meson devenv -C builddir --workdir .
  • ಹೊಸ ಆಪರೇಟರ್‌ಗಳು "ಇನ್" ಮತ್ತು "ನಾಟ್ ಇನ್" ಅನ್ನು ಸ್ಟ್ರಿಂಗ್‌ನಲ್ಲಿ ಸಬ್‌ಸ್ಟ್ರಿಂಗ್ ಸಂಭವಿಸುವಿಕೆಯನ್ನು ನಿರ್ಧರಿಸಲು ಪ್ರಸ್ತಾಪಿಸಲಾಗಿದೆ, ಅರೇ ಅಥವಾ ನಿಘಂಟಿನಲ್ಲಿನ ಅಂಶದ ಸಂಭವಕ್ಕಾಗಿ ಹಿಂದೆ ಲಭ್ಯವಿರುವ ಚೆಕ್‌ಗೆ ಹೋಲುತ್ತದೆ. ಉದಾಹರಣೆಗೆ: fs = ಆಮದು (‘fs’) fs.read (‘somefile’) ನಲ್ಲಿ ‘ಏನಾದರೂ’ ಆಗಿದ್ದರೆ # True endif
  • ಲಭ್ಯವಿರುವ ಎಲ್ಲಾ ಕಂಪೈಲರ್ ಎಚ್ಚರಿಕೆಗಳ ಔಟ್‌ಪುಟ್ ಅನ್ನು ಆನ್ ಮಾಡುವ “ಎಚ್ಚರಿಕೆ-ಹಂತ=ಎಲ್ಲವೂ” ಆಯ್ಕೆಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ (ಕ್ಲ್ಯಾಂಗ್ ಮತ್ತು MSVC ಯಲ್ಲಿ ಇದು -ವೆವೆರಿಥಿಂಗ್ ಮತ್ತು /ವಾಲ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಮತ್ತು ಜಿಸಿಸಿ ಎಚ್ಚರಿಕೆಗಳನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಸೇರಿಸಲಾಗುತ್ತದೆ, ಸರಿಸುಮಾರು -ವೆವೆರಿಥಿಂಗ್‌ಗೆ ಅನುಗುಣವಾಗಿರುತ್ತದೆ. ಕ್ಲಾಂಗ್ನಲ್ಲಿ ಮೋಡ್).
  • rust.bindgen ವಿಧಾನವು ಕಂಪೈಲರ್‌ನಿಂದ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಬೇಕಾದ ಅವಲಂಬನೆಗಳಿಗೆ ಮಾರ್ಗಗಳನ್ನು ರವಾನಿಸಲು "ಅವಲಂಬನೆ" ವಾದವನ್ನು ನಿರ್ವಹಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ.
  • meson ನ ಸಾಮಾನ್ಯ ಫಂಕ್ಷನ್ ಹೆಸರಿಸುವ ಶೈಲಿಗೆ ಅನುಗುಣವಾಗಿ java.genate_native_headers ಕಾರ್ಯವನ್ನು ಅಸಮ್ಮತಿಸಲಾಗಿದೆ ಮತ್ತು java.native_headers ಎಂದು ಮರುಹೆಸರಿಸಲಾಗಿದೆ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ