Chaidh ForgeZero 1.9.0 (fz), inneal togail loidhne-Ă ithne airson pròiseactan a chaidh a sgrĂŹobhadh ann an C, C++, agus cĂ nanan co-chruinneachaidh (NASM, GAS, FASM), fhoillseachadh. Chan eil feum aig an inneal air Makefile no faidhlichean rèiteachaidh eile airson a chleachdadh gu bunaiteach. Tha còd aâ phròiseict sgrĂŹobhte ann an Go agus tha e fo cheadachas MIT.
Bidh ForgeZero aâ lorg an seòrsa faidhle agus aâ taghadh an backend iomchaidh gu fèin-ghluasadach. Thèid gach faidhle còd a chur ri chèile ann am faidhle nĂŹ, an uairsin thèid a sgrĂšdadh airson samhlaidhean cruinneil dĂšblaichte thar gach nĂŹ agus a cheangal ri aon fhaidhle so-ghnĂŹomhaichte. Thèid faidhlichean co-chruinnichte a stòradh ann an tasgadan agus ath-chur ri chèile dĂŹreach Ă s deidh atharrachaidhean a dhèanamh air na faidhlichean còd co-cheangailte. Gu roghainneil, tha e comasach sĂšil a chumail air atharrachaidhean siostam faidhle agus ath-chur ri chèile Ă s deidh Ăšrachaidhean faidhle còd.
Is iad na co-chruinneachaidhean a tha aâ faighinn taic GCC, Clang, G++, agus Clang++; is iad na co-chruinneachaidhean NASM, GAS, agus FASM; is iad na ceanglaichean LD, GCC, agus Clang; agus tha taic ri tasglann AR. Is iad na rabhaidhean èigneachail airson C agus C++: "-Wall -Wextra -Werror -Wpedantic -Wshadow -Wconversion". Tha na glanadairean AddressSanitizer agus UndefinedBehaviorSanitizer air an comasachadh gu bunaiteach (faodar an cur Ă comas leis aâ bhratach -sanitize=false). Is iad na h-Ă rd-Ăšrlaran a tha aâ faighinn taic: Linux, macOS, Windows (WSL2 agus dĂšthchasach gu deuchainneach).
PrĂŹomh atharrachaidhean ann an dreach 1.9.0:
- Bratach "-target" air a chur ris , a leigeas le tar-chruinneachadh airson ailtireachd sam bith leis na h-innealan ro-leasachan iomchaidh. Bidh fz gu fèin-ghluasadach aâ dearbhadh ainmean an t-siolandair, an neach-ceangail, agus an tasglannair stèidhichte air an aithnichear sònraichte (me, "arm-linux-gnueabihf-gcc"). Tha taic ri gach Ă rd-Ăšrlar targaid Ă bhaisteach GNU, nam measg arm-linux-gnueabihf, aarch64-linux-gnu, agus riscv64-linux-gnu.
- Chaidh taic airson Pròtacal Frithealaiche CĂ nain (LSP) a chur an gnĂŹomh. Bidh am bratach "-compile-commands" aâ gineadh faidhle compile_commands.json (Stòr-dĂ ta Cruinneachaidh) ann am freumh aâ phròiseict. Tha am faidhle air a leughadh leis aâ chĂ nan. frithealaichean clangd agus ccls, aâ toirt seachad crĂŹochnachadh fèin-ghluasadach, seòladh còd, agus breithneachadh ann an luchd-deasachaidh a tha aâ toirt taic do LSP (Neovim, VSCode, CLion, Emacs, msaa.).
- Bidh an Ă ithne fz "-update" a-nis aâ sĂ bhaladh am faidhle dĂ -chĂ nanach lĂ ithreach gu /usr/local/bin/fz.old mus tèid dreach Ăšr a stĂ ladh, aâ leigeil leat tilleadh chun dreach roimhe gun ath-stĂ ladh.
- Chaidh biast a chĂ radh ann am pròiseactan ioma-eòlaire far am biodh faidhlichean le ainmean bunaiteach co-ionann bho fho-eòlairean eadar-dhealaichte aâ sgrĂŹobhadh thairis air faidhlichean nĂŹ a chèile. Tha ainmean faidhlichean nĂŹ a-nis air an gineadh stèidhichte air an t-slighe choimeasach iomlan chun fhaidhle tĂšsail.
- Chaidh modh eadar-ghnĂŹomhach "fz -shell" a chur an gnĂŹomh airson faidhlichean singilte a thogail.
- Chaidh còmhdach deuchainn a chur ris airson nan Ă itheantan SplitCommand, CmdSet, agus CmdBuild. Tha còmhdach deuchainn airson aâ phacaid ceangail air a dhol suas bho 17% gu 60%, agus tha còmhdach airson a h-uile pasgan air a dhol thairis air 40%.
- Chaidh inneal-ionaid CheckTool a chur ris airson suidheachaidhean deuchainn le co-phĂ irtean slabhraidh innealan a dhĂŹth.
Atharrachaidhean bho fhoillseachaidhean roimhe:
- Tha an dreach 1.8.0 aâ cur an gnĂŹomh cruinneachadh leabharlannan statach (-type static / -lib), aâ dèanamh cinnteach Ă sònraichteachd ainmean faidhle nithean ann am pròiseactan ioma-stiĂširiche, agus aâ cĂ radh mhearachdan anns an fho-shiostam cruinneachaidh co-cheangailte ri dol thairis air an t-slighe "..".
- Tha dreach 1.7.0 aâ cur cruinneachadh co-shĂŹnte ris (-j N, 0 â fèin-lorg air Ă ireamh nan coraichean), taic airson sgriobtaichean ceangail (-T) agus seòlaidhean puing inntrigidh (-Ttext), modh eadar-ghnĂŹomhach (fz -shell), taghadh soilleir de chruth toraidh (elf32, elf64, bin), cruinneachadh fhaidhlichean C++ (.cpp, .cc, .cxx) leis na brataichean rabhaidh teann ceudna ri C.
- Tha Tionndadh 1.6.0 aâ cur tòiseachadh pròiseict ris (fz -init, aâ cruthachadh .fz.yaml, .fzignore, README.md), taic cruth bin (-format bin) airson luchdairean-tòiseachaidh agus firmware, agus raointean rèiteachaidh libs, flags.cc, flags.asm, flags.ld.
- Tha dreach 1.5.0 aâ toirt a-steach iomadh eòlaire tĂšsail (source_dirs), liostaichean faidhle soilleir (source_files), pĂ train in-ghabhail/dĂšnadh a-mach, raon libs airson leabharlannan ceangail, am faidhle .fzignore, agus co-aonadh ioma-ĂŹre de fhaidhlichean rèiteachaidh.
Source: fosgailtenet.ru
