GNU Mes 0.26, ערכת כלים לאתחול עבור GCC המאפשרת בנייה בלולאה סגורה מקוד המקור, יצאה לאור. ערכת כלים זו מטפלת בבעיה של בניית קומפיילר ראשונית מאומתת בהפצות על ידי שבירת מעגל הבנייה מחדש (בניית קומפיילר דורשת קבצי הרצה של קומפיילר שכבר בנוי, ובניית קומפיילר בינארי היא מקור פוטנציאלי לדלתות אחוריות נסתרות, המונעות את הבטחת מלאות שלמות הבניית מקוד המקור).
GNU Mes מציעה מתורגמן מארח עצמי לשפת Scheme, הכתוב בשפת C, ומהדר פשוט לשפת C (MesCC), שנכתב בשפת Scheme. שני הרכיבים ניתנים להרכבה. מתורגמן Scheme מאפשר לבנות את המהדר MesCC C, אשר לאחר מכן מאפשר לבנות גרסה מופשטת של המהדר TinyCC (tcc), שהיכולות שלו כבר מספיקות לבניית GCC.
מתורגמן לשפת Scheme הוא קומפקטי מאוד, לוקח בערך 5000 שורות קוד בתת-הקבוצה הפשוטה ביותר של שפת C וניתן להמיר אותו לקובץ הפעלה באמצעות המתרגם האוניברסלי M2-Planet או מהדר C פשוט המורכב באמצעות אסמבלר hex0 בהרכבה עצמית שאינו דורש תלות חיצונית. במקביל, המתורגמן כולל אספן אשפה מן המניין ומספק ספרייה של מודולים הניתנים לטעינה. הפרויקט מפתח גם את ספריית Mes C C, אשר מספיקה לבניית glibc 2.2.5, binutils 2.20.1 ו-gcc 2.95.3, הנחוצה לפריסת הפצת Guix עבור i686-linux, x86_64-linux, armhf-linux ו-aarch64 -לינוקס פלטפורמות, תוך שימוש רק בקודי מקור (Full Source Bootstrap).
הגרסה החדשה מוסיפה תמיכה במודולים התואמים במלואם ל-Guile ומספקת את היכולת להריץ Gash ו-Gash-Utils. קביעות הועברו לחריגים. נוספה תמיכה בביטויים רגולריים. תשעה מודולים חדשים יושמו (ftw, i18n, receive, regex, io ports, bytevectors, srfi-2, srfi-11, ו-srfi-37). נוספו 46 פונקציות חדשות, כולל chdir, clone-port, closedir, concatenate, drop, environ, execle, mkdir, opendir, partition, pipe, readdir, reduce, rmdir, seek, span, sleep, umask, uname, ו-utimes. מהדורות עתידיות צפויות לכלול תמיכה באתחול NixOS ממקור בלבד, אפשרות לאתחול gcc 4.6.4, ותמיכה בבנייה מלאה של המערכת כולה ממקור ב-. Linuxסביבות המבוססות על ארכיטקטורות armhf ו-riscv64.
מקור: OpenNet.ru
