"Рашид Ачилов. Создаем порт для FreeBSD своими руками (Часть I) " - читать интересную книгу автораЏ®ав ¤«п FreeBSD б®бв®Ёв Ё§ ҐбЄ®«мЄЁе д ©«®ў, Є®в®алҐ б ¬Ё Ї® ᥡҐ ЁзҐЈ® Ґ ¤Ґ« ов. „ ¦Ґ Ґб¬®вап в®, зв® ®¤Ё Ё§ Ёе §лў Ґвбп Makefile, ўбҐ ®Ё ЇаҐ¤бв ў«пов Ё§ ᥡп д ©«л ¤ ле - ®ЇЁб Ёп Ё ®ЇаҐ¤Ґ«ҐЁп ҐЄ®в®але ЇҐаҐ¬Ґле, ЁбЇ®«м§гҐ¬ле бЁб⥬®© Ї®ав®ў ў Є зҐб⢥ Ёб室ле ¤ ле. ЊҐе Ё§¬ а Ў®вл бЁбвҐ¬л ¤ ўл¬-¤ ў® ®в« ¦Ґ, ў Їа®б⥩襬 б«гз Ґ Ґ®Ўе®¤Ё¬® в®«мЄ® § ¤ вм Ёбе®¤лҐ ¤ лҐ. ЌЁ¦Ґ ЇаЁў®¤Ёвбп бЇЁб®Є д ©«®ў, Є®в®алҐ Ґ®Ўе®¤Ё¬л ¤«п Ї®ав ( б ¬®¬ ¤Ґ«Ґ Ї®ав ¬®¦Ґв ЁбЇ®«м§®ў вм Ё ¤агЈЁҐ д ©«л, ® ®Ё Ґ пў«повбп Ґ®Ўе®¤Ё¬л¬Ё): щ Makefile - ®б®ў®© д ©« Ї®ав . ‚ Ґ¬ § ¤ овбп ўбҐ Ґ®Ўе®¤Ё¬лҐ ЇҐаҐ¬ҐлҐ, Є®в®алҐ бва Ёў ов а Ў®вг бЁбвҐ¬л Ї®ав®ў ў ⮬ Ё«Ё Ё®¬ ०Ё¬Ґ. ’ Є¦Ґ ў н⮬ д ©«Ґ ¬®¦Ґв Їа®Ја ¬¬Ёа®ў вмбп б®Ўб⢥® Ї®ўҐ¤ҐЁҐ бЁбвҐ¬л ў в®© Ё«Ё Ё®© бЁвг жЁЁ. ’ҐЄбв®ўл© д ©«, бв ¤ ав®Ј® д®а¬ в , а бЇ®§ ў Ґ¬®Ј® Їа®Ја ¬¬®© BSD make (Ґ Їгв вм б GNU make! Ћ бЁв ЄбЁбҐ д ©«®ў BSD make б¬. man make). „ л© д ©« гб«®ў® ¤Ґ«Ёвбп зҐвалҐ бҐЄжЁЁ, Є®в®алҐ ¤®«¦л Ё¤вЁ бва®Ј® ¤агЈ § ¤агЈ®¬, Ґ аги п Ї®ап¤Є . ЋЇаҐ¤Ґ«ҐЁп ЇҐаҐ¬Ґле, Є®в®алҐ ¤®«¦л Ї®пў«пвмбп ў ¤ ®© ᥪ樨, Ґ ¤®«¦л Ї®пў«пвмбп Ё ў ЇаҐ¤л¤г饩, Ё ў Ї®б«Ґ¤го饩 ᥪ樨. Џ®а冷Є ᥪ権 в Є®ў: з «м п ᥪжЁп -ъ ᥪжЁп MAINTAINER -ъ ᥪжЁп USE_* -ъ ᥪжЁп ¤®®ЇаҐ¤Ґ«ҐЁ©. щ Ќ з «м п ᥪжЁп Ё¤Ґв б ¬®© ЇҐаў®©. ‚ ҐҐ Ї®¬Ґй овбп ЇҐаҐ¬ҐлҐ PORTNAME, PORTVERSION, CATEGORIES, MASTER_SITES Ё DISTNAME. ’ Є¦Ґ ў ҐҐ ¬®Јгв Ўлвм Ї®¬ҐйҐл ¤агЈЁҐ ЇҐаҐ¬ҐлҐ, Ї®«л© ЇҐаҐзҐм Є®в®але ЇаЁўҐ¤Ґ ў д ©«Ґ bsd.port.mk. щ ‘ҐЄжЁп MAINTAINER Ё¤Ґв ҐЇ®б।б⢥® Ї®б«Ґ з «м®© ᥪ樨. Љ Є Їа ўЁ«®, ® ᮤҐа¦Ёв в®«мЄ® ¤ўҐ ЇҐаҐ¬ҐлҐ - MAINTAINER Ё COMMENT. ‘¬лб« ¤ Ґв Єа вЄ®Ґ ®ЇЁб ЁҐ нв®Ј® Ї®ав . ‚ 楫пе ЎҐ§®Ї б®бвЁ ўбҐ § Їа®бл Ї взЁ (¤ Ё б ¬Ё Ї взЁ в®¦Ґ), ЇаЁиҐ¤иЁҐ ¤«п 㦥 ЇаЁпв®Ј® Ї®ав Ґ б ¤аҐб , гЄ § ®Ј® ў Ї®«Ґ MAINTAINER, б ¤агЈ®Ј® ¤аҐб , ЇҐаҐ Їа ў«повбп MAINTAINER г⢥তҐЁҐ Ё ў®бпвбп ў Ї®ав в®«мЄ® ў ⮬ б«гз Ґ, Ґб«Ё Ўг¤гв Ё¬ ®¤®ЎаҐл. щ ‘ҐЄжЁп USE_* а бЇ®«®¦Ґ Ї®б«Ґ ᥪ樨 MAINTAINER. Ћ ᮤҐа¦Ёв а §«ЁзлҐ ЇҐаҐ¬ҐлҐ, § ¤ ойЁҐ пў® Ё«Ё Ґпў® § ўЁбЁ¬®бвЁ ¤«п ¤ ®Ј® Ї®ав . Ќ ЇаЁ¬Ґа, "USE_GETTEXT=yes" § ¤ бв § ўЁбЁ¬®бвм Ї®ав ®в devel\gettext, "USE_KDEBASE_VER=3" § ¤ бв § ўЁ бЁ¬®бвм ®в x11\kdebase3 Ё в. ¤. ‘ЇЁб®Є ўбҐе ў®§¬®¦ле ЇҐаҐ¬Ґле USE_* ЇаЁўҐ¤Ґ ў д ©«Ґ bsd.port.mk. Њ®¦Ґв ®вбгвбвў®ў вм, ®, Є Є Їа ўЁ«®, ЇаЁбгвбвўгҐв - ва㤮 ©вЁ Ї®ав, Є®в®ал© ў®®ЎйҐ Ё ®в 祣® Ґ § ўЁбЁв. щ ‘ҐЄжЁп ¤®®ЇаҐ¤Ґ«ҐЁ© - Ї®б«Ґ¤пп ᥪжЁп ў д ©«Ґ. Њ®¦Ґв ®вбгвбвў®ў вм Ё § з бвго в Є Ё Їа®Ёб室Ёв. ‘®¤Ґа¦Ёв ЇҐаҐ®ЇаҐ¤Ґ«ҐЁп а §«Ёзле ¬ЁиҐҐ©, б®бв ў«пойЁе Їа®жҐбб бЎ®аЄЁ Ї®ав . ЏаЁ бЎ®аЄҐ Ї®ав Ї®б«Ґ¤®ў вҐ«м® ўлЇ®«повбп ¬ЁиҐЁ fetch, extract, configure, build Ё install. Љ ¦¤ п Ё§ Ёе ў бў®о ®зҐаҐ¤м б®бв®Ёв Ё§ ваҐе нв Ї®ў: pre-sometarget, do-sometarget Ё post-sometarget. ќвЁ нв Їл ЇаҐ¤ § зҐл ¤«п Їа®ўҐ¤ҐЁп ¤®Ї®«ЁвҐ«м®© ЇаҐ¤ў аЁвҐ«м®© Ё«Ё Ї®б«Ґ ¤го饩 ®Ўа Ў®вЄЁ, в Є¦Ґ ¤«п § ¬ҐйҐЁп ҐЄ®в®а®Ј® нв Ї , Ґб«Ё ў н⮬ Ґбвм Ґ®Ўе®¤Ё¬®бвм. Ќ ЇаЁ¬Ґа, нв Ї do-extract ¬®¦Ґв Ўлвм ЇҐаҐ®ЇаҐ¤Ґ«Ґ ¤«п ўлЇ®«ҐЁп а бЇ Є®ўЄЁ ¤ЁбваЁЎгвЁў Ґбв ¤ авл¬ ®Ўа §®¬. ‘гйҐбвўгов Ё ¤агЈЁҐ нв Їл, Ї®«л© Ёе ЇҐаҐзҐм ЇаЁўҐ¤Ґ ў д ©«Ґ bsd.port.mk. щ distinfo - д ©«, ®ЇЁблў ойЁ© ўбҐ д ©«л, ўе®¤пйЁҐ ў ¤ЁбваЁЎгвЁў Їа®Ја ¬¬л. …Ј® Ґв Ґ®Ўе®¤Ё¬®б⨠ᮧ¤ ў вм ўагзго - Ї®б«Ґ ᮧ¤ Ёп Makefile |
|
|