From 32ffbc3341266e087cf1e51ecaee7e4d528aa97d Mon Sep 17 00:00:00 2001 From: asus Date: Tue, 23 Jan 2024 10:57:51 +0100 Subject: [PATCH] created makefile and folder structure --- a.out => 1_Colleen/Colleen | Bin 16008 -> 17328 bytes Colleen.c => 1_Colleen/Colleen.c | 0 1_Colleen/Makefile | 105 +++++++++++++++++++++++++++ 1_Colleen/builds/Colleen.o | Bin 0 -> 3856 bytes Makefile | 62 ++++++++++++++++ en.subject.pdf => doc/en.subject.pdf | Bin main.c | 7 -- output | 12 --- output.c | 13 ---- 9 files changed, 167 insertions(+), 32 deletions(-) rename a.out => 1_Colleen/Colleen (53%) rename Colleen.c => 1_Colleen/Colleen.c (100%) create mode 100644 1_Colleen/Makefile create mode 100644 1_Colleen/builds/Colleen.o create mode 100644 Makefile rename en.subject.pdf => doc/en.subject.pdf (100%) delete mode 100644 main.c delete mode 100644 output delete mode 100644 output.c diff --git a/a.out b/1_Colleen/Colleen similarity index 53% rename from a.out rename to 1_Colleen/Colleen index 158a2bb65ac6a9de94332281b7bac1e7f09b4774..ddf617347c1c59d2da7087c13868f5119cbcb627 100755 GIT binary patch delta 3096 zcmbtWeQXIh>-8o6?q>UR#O*^Mm!A$gnk6|v3lUO9S z>yOc*PA)BsMP+E&!yiSHP`kex{#mN~87*a9;auI?QHW6tR=6Ubl zb4$=95U=&VzvtukydTf|;d}YT>)+*G4fLiYVwQvjMBm2*gajEPZP@N2;lVn&d<pX4RpU1D1T{>@%RZr;KrYHGIdrL+ zIPlGOLY~L|iK$=wbMfw>hjhsL2N;uFIJBO;^ditjD{LG#$nZfwUF-Wy+dcYNWU zZF0<{sc{3q}I)|Tcel;GVy)mvwWGH7u~9XK__t%IV5lq>9J(e=_& zbXv&nJy`)m9py;^-cVI9VODxhX-UAE+8g|&(I{9tF;|3nHFXK1T8Ja?d2I%CSA^e) z!wr7BcQ3mNEQCZr)cb44C#(5NRnE*A`5F0zY^j_pYfw)hg;N%yJTSyD_5aBs&Tuv9~a@7PU z;k;Zp+#xu^CBNj~8TRhn<|_NKKb2515paa}weD}7=orO3I#ljIjm|;BH(A)dhfH+f z06oMJKG53Qih~vDs5r|QBFAx`w6{^fhp$GkK?(DP#leMmkI==Pp^BKg@KW!{)g3=N z`{rS}Jkp69B=QNir9OdgIVzB!3)@=$D7amx1krU=*yTDR@JC#Hv4eMGr~gfAYna=E zg}J$GHm_!gHd~m_YDT$g{4)XbqtIh!fur_$5a ze5Qg2fMjNk5}7x0d6LUlNU>CyDH-$T9imyZlaOM`_&=sS*IeWOHg9X%k22ST8)jdn zUX-I)m$2T%`U|YLvEIdN&;_S-nL7t(^}d}Ra(>g5kdeg`54jHS=sxt@{~l;I%LKL@ z*+F!8fPNpb|81C?oI`=e>!3t^jwkTK4@VCW!9qacwB<%N#{Te63LcivZY~q%Y>m^=zzdslp+T=^2 zZyU}p1>AstLf_;C+sn4qeC}`pmzmw(cJrA;`!zZekF#1f2L8c=vG-VQrchCfa}}b} z-6ZN{xlGhdVSYY~r%0X3PF82q^eo!4F*#YvzF=!}cqnbTTq)V2F*VhcDJA`w55;t0 zdb*sglyO1?!me>}$G!&jm;`5HviRt`So-9}!iov}h2_nO~m|*8E0md+L?1vk!4&Q~yhzu|9lex=qe_ts06Pz06s!6f` z7wVww@8y056Z=EF#KDhaUCJFsJI4~mV0uoMd^zeW%3&}JnS%Ehk(hHpbI77BiV z7W@JrY-Pm$X2M}ddV_WJcpmfGXBq#VMtYTx&_h>b$J!r@_DAF@ERAU1d!tCfa!<1` z0=bc=U~9Y+zTlK#V?-A1lPrT0kBRn))4_<3in?w^JqJtikgx+6#NiF?5HB$Mm*MGH zNZ8f1|Bl%+rhTw!PtePbr9$mWg4$7IWYa^Nw;AhwbF`z)=!^XpC16IM{FLa|8S8=> uJ=2VSa=?m?&}dkR2fRsUIm1%d0}tXFe`_yvA2`tR=8#4ICI`D?UH<~G26G?) delta 2165 zcmZ`)ZA@EL7(VxwLND@hFSIM=>)x`t4>sCjTiAfoc8u+!W`ih+S=1ES=4LjxNl7$u z0Yn`LOXyxr=KME*=nqX${uGU-26SanGfbASEGBB4!DUgvB@#`%zUSU^7;f=2=RD_q z-shf=x9>S;@~kj&W}<9MLMCR3SwON4tb-6EJ4qq7DydFIQ_|L4%e6Ii-7j4eEaMs| zf0|Z=+J7yRl#CyW)j=wp zVTk$;Qy<<9pURbj9Tw#3T02ste|xt+9QnzIU48UsvOph;{DQ`!2iLcF2%E3$-}^vQ zJOgyG-KfD?CyNMqYG#cXzAdNebc@$fuaCB`>SI`kZ#$mLzwcLL^smOJYfv3e=VLof zn@?!-Ic@aO%hphD{ewdd&n8T3ZibMlMWw6=v|R1HmP7y6DVwGU;hor{X5l_9FRpv8^yyFUX?_L;ZAN2hmR#Ot@d{ zwFHzSQ&P#r2l9C$5(QT3d`gz(pU0Ho(S>@SDrBI`r+Oz@rqcsJ%V3U$>|!7bkn%;v zbQHex`4pM4d6tHBg5uw@t(sXpt^YQRla#_EZc_M%n6?I8epQg+wEtNl3qrsx24qlj z8w3Yz3p@lLi&c;aYQi`S1?y}wnShUiu192&Ssy(dHi%WEw-MVFor;zYtO6+~a*SH$ z^d@$j{S71oO2}0qubooUiOq=VcVSfGq4pdnDXW1uLOUwlgx^(Mm^C}4#0m2uHx0?H z&|ZN+ec0{cb8=}t?!81*NEUj+e$=F}b-)*4S49aSnx$faCa<7Y#&ws$GWunbVEZ+5 z45eq8Uj}c3D=3qLY~N-Qp#K7$3rFZ+JP*tJ$Sb0U$WzA}{uJ|09Z&lD4)?;-yAG5b z>Phwx-!pxE#MgWB#EHYtC-HyK;Z##X2*7-kU%GqsO3jUh<19x^gm_LVB$_peXU-&y zHaAKOOtS!UXz?r>1gWJ_l38-e(1Di5EDc7{>SR_Y%uyvvFd3xCWlWV+M1`e@X7#+& zxLe$md2SKbBE=(i1e8`4CPTRucQrisITnJ_tO{Sk=~gxFq=T(1Jb^j&4R)x6y%yxY z$A*sOr5EjbRj1ebp5xaTQMLRgl6d*?hlTLBBV7kqBAdO-=qg_4=1)k5y`K(HVjHVy zbXc6%vXj5COE4exD{1zar0ErnMTf4KUm`KnAOuEZ7-VM2Fc*tTa=`L!2PLkiCUfA< gZl@As pipe is for order-only prerequisites : +# - for each file "%.$(EXT)" : +# - if it has been modified since last time +# - execute rules on corresponding target file "$(D_OBJS)/%.o" +# - and directory "$(D_OBJS)" is order-only prerequisite : +# - it must exist before executing rule +# - but last time modification is not checked +$(D_OBJS)/%.o: %.$(EXT) | $(D_OBJS) + @echo $(CYAN)"compilation (objects.o) :"$(RESET) + $(CC) $(CFLAGS) -c $< -o $@ + +$(D_OBJS): + mkdir $@ + +$(OBJS): $(F_INCLUDES) + +$(NAME): $(OBJS) + @echo $(CYAN)"linkage (link objects.o) :"$(RESET) + $(CC) $(OBJS) -o $@ $(LIBS) + +leaks: $(NAME) + valgrind --leak-check=full --show-leak-kinds=all ./$(NAME) + +clean: + $(RM_OBJS) + +fclean: clean + rm -f $(NAME) + +re: fclean all + +.PHONY : all clean fclean re + diff --git a/1_Colleen/builds/Colleen.o b/1_Colleen/builds/Colleen.o new file mode 100644 index 0000000000000000000000000000000000000000..510ff48855eadca11669c84d1eeca2c58c3c8ed5 GIT binary patch literal 3856 zcmc&%U5pb|6h1T4DcjwJU04wW;!a>I3xVlYNhGpj3AWYiAOT{7H<_7QxkV)CI$#ZK1wRc*E2Vm zPcolkzMFZ0d6D^1;-5sZ^EZo^zG|Jmo!f4?&8F=HhT9JOdez>Z%UWCNj@4*aZDZOG zs&&_#-&B)f?BO{dEAU2{bIM*RoFy?HM{a_RJ#ynyK`Hsa>FUv;g!G zI5-B7o&YVocW7t`cmE_d9h3oNSR}*Ul2YL+VMr>h#9ld}LFzdiXv%w`sKdYs9Hi8@ zTPt9YW>t z;@`J~LWLGWl-`rb6-D`L)k!H`mp|3`jD<3N~^6gbpW0IUmvVnGLmgC{|=!P z{C>Z821^}lKS@;c3R(yaM|%{C+5_rc>sJnFp#fchy`%vh&0f-AbuWmB26(CybOGfx zvHZhYLF_HYM_E6t5gcE~CKykJYy}In6B@RA_aibGr=6fx2>yNyACBR2AV{~nd(c@C z;dEPw-dY?J5iS_X_%+7YGZ*{@%W@V4 z|AKKNp?{m@i3EO!Wyzn)DPDE*O#~O&U^~){>lYHZ=x=76@{IjN05gFvuv}y=aan}H zVKA$9r9D?FS1O);7EI4>l+6GyVKDjWW-L)_;@N{~}w``Uy&|e-g2zPcpgA@o7FzN!=|t*)P7q z7w%0qruY;)8GjFA`@r+n?$n(LnMS_!}Jb zTmL94#@A10P3&b~>77XCM81pU6e);Ur%&qA`_nIefdduUlJ=i|H6-I7K#Y7!o;VEY zGmd{z0Ok^3_(zCqNAA1GUS*Y#y~crLUnxG3*hLb+uQ(7L!H5_5UxwXmK#bn3Wd45x D-3!vk literal 0 HcmV?d00001 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..c4c27b5 --- /dev/null +++ b/Makefile @@ -0,0 +1,62 @@ +# - - - - - - # +# # +# COLORS # +# # +# - - - - - - # + +GRAY = "\e[0;30m" +RED = "\e[0;31m" +GREEN = "\e[0;32m" +YELLOW = "\e[0;33m" +BLUE = "\e[0;34m" +PURPLE = "\e[0;35m" +CYAN = "\e[0;36m" +WHITE = "\e[0;37m" + +B_GRAY = "\e[1;30m" +B_RED = "\e[1;31m" +B_GREEN = "\e[1;32m" +B_YELLOW = "\e[1;33m" +B_BLUE = "\e[1;34m" +B_PURPLE = "\e[1;35m" +B_CYAN = "\e[1;36m" +B_WHITE = "\e[1;37m" + +RESET = "\e[0m" + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +# . name = value \ . += append to a variable # +# VARIABLES . value . != set result of command # +# . name is case sensitive . ?= set if not already set # +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # + +D_QUINES = ./1_Colleen + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +# . target: prerequisites . $@ : target # +# RULES . recipe . $< : 1st prerequisite # +# . recipe . $^ : all prerequisites # +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # + +all: $(D_QUINES) + @for dir in $^; do \ + echo $(B_GREEN)"compile $$dir"$(RESET); \ + $(MAKE) -C $$dir; \ + done + +clean: $(D_QUINES) + @for dir in $^; do \ + echo $(B_YELLOW)"clean $$dir"$(RESET); \ + $(MAKE) clean -C $$dir; \ + done + +fclean: $(D_QUINES) + @for dir in $^; do \ + echo $(B_PURPLE)"fclean $$dir"$(RESET); \ + $(MAKE) fclean -C $$dir; \ + done + +re: fclean all + +.PHONY : all clean fclean re + diff --git a/en.subject.pdf b/doc/en.subject.pdf similarity index 100% rename from en.subject.pdf rename to doc/en.subject.pdf diff --git a/main.c b/main.c deleted file mode 100644 index 52321e4..0000000 --- a/main.c +++ /dev/null @@ -1,7 +0,0 @@ -#include - -int main() { - char *program = "#include %c%cint main() {%c char *program = %c%s%c;%c printf(program, 10, 10, 10, 34, program, 34, 10, 10);%c return 0;%c}%c"; - printf(program, 10, 10, 10, 34, program, 34, 10, 10); - return 0; -} diff --git a/output b/output deleted file mode 100644 index e8cdb0a..0000000 --- a/output +++ /dev/null @@ -1,12 +0,0 @@ -/*comment outside*/ -#include - -char *second_function() { - return "/*comment outside*/%c#include %c%cchar *second_function() {%c return %c%s%c;%c}%c%cint main() {%c/*comment inside*/ char *program = second_function();%c printf(program, 10, 10, 10, 10, 34, program, 34, 10, 10, 10, 10, 10, 10, 10, 10);%c return 0;%c}%c"; -} - -int main() { -/*comment inside*/ char *program = second_function(); - printf(program, 10, 10, 10, 10, 34, program, 34, 10, 10, 10, 10, 10, 10, 10, 10); - return 0; -} diff --git a/output.c b/output.c deleted file mode 100644 index 70b4936..0000000 --- a/output.c +++ /dev/null @@ -1,13 +0,0 @@ -/*comment outside*/ -#include - -char *second_function() { - return "/*comment outside*/%c#include %c%cchar *second_function() {%c return %c%s%c;%c}%c%cint main() {%c /*comment inside*/%c char *program = second_function();%c printf(program, 10, 10, 10, 10, 34, program, 34, 10, 10, 10, 10, 10, 10, 10, 10, 10);%c return 0;%c}%c"; -} - -int main() { - /*comment inside*/ - char *program = second_function(); - printf(program, 10, 10, 10, 10, 34, program, 34, 10, 10, 10, 10, 10, 10, 10, 10, 10); - return 0; -}