From 9a2b8a0814bee7765b3f6c23f233c2ad8cc4f83c Mon Sep 17 00:00:00 2001 From: joe-conigliaro Date: Mon, 14 Oct 2019 16:41:46 +1100 Subject: [PATCH] compiler: move msvc compiler to -cc flag instead of -os (#2338) * move msvc to -cc flag instead of -os * undo unrelated change * do first build without msvc * remvove flags temp * fix comment --- .github/workflows/ci.yml | 8 ++++---- .travis.yml | 3 +-- examples/hot_reload/glfw3.dll | Bin 0 -> 249856 bytes make.bat | 4 ++-- vlib/compiler/cc.v | 18 +++++++++++++----- vlib/compiler/cflags.v | 11 ++++------- vlib/compiler/fn.v | 6 +++--- vlib/compiler/gen_c.v | 2 +- vlib/compiler/live.v | 12 ++++++------ vlib/compiler/msvc.v | 4 ++-- vlib/compiler/vhelp.v | 2 +- vlib/os/os.v | 3 --- 12 files changed, 37 insertions(+), 36 deletions(-) create mode 100644 examples/hot_reload/glfw3.dll diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c3e66a1932..322b2f0907 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -85,14 +85,14 @@ jobs: # with: # node-version: 12.x - name: Build - env: - VFLAGS: -os msvc + #env: + # VFLAGS: -cc msvc run: | git clone --depth=1 https://github.com/ubawurinna/freetype-windows-binaries.git thirdparty/freetype/ .\make.bat -msvc - name: Test - env: - VFLAGS: -os msvc + #env: + # VFLAGS: -cc msvc run: | .\v.exe test v ## v.js dosent work on windows diff --git a/.travis.yml b/.travis.yml index 494cecd494..26ac0b5e3d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -45,12 +45,11 @@ script: if [[ "${TRAVIS_JOB_NAME}" == "windows_gcc" ]]; then gcc --version echo "Building V with GCC" - export VFLAGS="-os windows" ./make.bat -gcc fi if [[ "${TRAVIS_JOB_NAME}" == "windows_msvc" ]]; then echo "Building V with MSVC" - export VFLAGS="-os msvc" + #export VFLAGS="-cc msvc" ./make.bat -msvc fi diff --git a/examples/hot_reload/glfw3.dll b/examples/hot_reload/glfw3.dll new file mode 100644 index 0000000000000000000000000000000000000000..1ed6f46c8df70835f70bd75ef97ab09dbf7dafbe GIT binary patch literal 249856 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%0DE0JD>^fIKEBmEkZ ziS!DjwMfdpitIoVNnTGJED5u#5h)N<4xS*S!K8#|7DlO!K?q4WJ9rp;o63!7UjZ!~ zssiwNBBu&hf990WmVv)S79#~#!Q5yTeq!JSiq(-bhJC>fX5@X9hj`1LC-hdk#5m@2 zejlpTE+v;#VH8deSTNTlEvz5HVGYiZRC!1?@V=nVadiXg#qSx(jKcS8-q(nk5G;Y_ zNO}_U;=L4N~n!|4_F(v1=qG4$(St*@8b6 zT)dz_Nx70Dh~N=;&7o5jx<#+62e^d^b1Me+9;;6vVt~A@baCCua2h}_U~Z_#dmxd+DqiP%^z6<3iYad#&U3=ePbkiqHDPlS?thA^&29P4kiLfWFw$d4mww`jGglz3MT#PIAPpd;kxEE-%LbF?W#E^@Xj5tO ziui>4EPi$q-QF>1T_g($S74?$Axeq&+5F5;FA&O!r<|`|ptP8d!>B*f6`w?VkRC(+ zVWh7iJ%DsK(w`!|A88*_2`P;UOxo ziZ`q)(wBwnl3R2T#EF0Wf8D9&SM~eoIOI+(t=i9_Vmr~rBt8u9Ou>H)qOs-pC{u?= zaurqU%?uS%Xg0Bac7p=m42xAQ!PpXlN4stn<&|VS@~Trf#Np8%J+;s;16Be4N3=YH zi%l4S*QE-IAcLZ08HoFbV)<@d;P%-EE7oG9Ma+nL-G+S$HEj2n;w-B6d}M_!zhzwD9g zl%9HsaRrkN&BZ851ZEhY{M#qaT#uANDj@v^()~zZL^_W2Fw#Dx_aOZ~(w`uG2I(#& z`u%RCr+x-@bikh?{QxP6>n^0%A%&5yL^6?Hi1civ@1V@z0sa-z|A+L)Nbg5_7t-62 zrjhbUqeyQ?+K$wV^eUtWk-q+SPn`J|q<=*EEYhctK8EyRq=QKBL;62Rzll^r+KtqU z^q)wouL<&6oU<$aSgQeCaY=#wvaIv@Dy&O=tha1v^DnM}2MdI(o$EFa`l9^FGY@v=kAml}i(HR5|tD+0*xnb(xbtWq9n3 zyiTKjFM}H&5am}%IQ|QME*RwdW#v6Lut+?*cm3X2)GWX|mv)Shln-zF4bKoI$t4+6 zin%T?b~eD(T=-$HFG?BGH02R6g0(6YfuzE9*n~7)!V(HZSUEA_E$Z|7IZy-65yTY4 z%7xIJhUNAmEG?L}QKM*0rpZlNZ?!-tmU6(ht#ziGxz^R6!!m?)h_%bBdNt>1wO3sk zMm|TY^Xl)k9NVXFmv?3uo|5-Z$@{0SQ%|_dsk^7{<=jb>n}w_Dw-fUEh}@VX-(wg% zccKQgATR#B-`C%n;otT5&+s+v#Swq{ee%964?RN3;OX2%3U2qgJD>AgPYet%x_6IGwC_Vx|fTe)@nm1b*mv^l8mE4cFe3Vv4TV`Y3iS^0zF za~i_siq_9;dq;F;&ZM+JG~xrTAo^I*e8J_vX_QWNqsfbT;JB7Xqz!$?u&4+DN0 z=^Er`0k407VRRth2l#e4@bpr7z#ky(LjDxsp%)p(IPwI)hBSrzNx)aU7%RZY2Lb;8 zX&;pVeBMh9Z|0sjWcID&5hzAgZ~ zA-@rD8`9;-_W{mb4HqBePXT@qv&~xM4*@1%5DDpwT0#Y3L8Nk0sx(4}K zz%L_hME)e;elehBG<$R7f1>IXiN4+0L{1biaD3-E17_aJ`&@P4Gv zB7Y3@^{1nnRke>zoDbmBp8@Cw72Bb%k-w1f}&A=`41pfo+ z())pP!01l+s3E@*@Y6_Zke>y-Y!`GB`Neqygj!ehujs)BaBdR#qVj-Gn*u(m4B+NlL6gY$0lxV*;P8Q`7`p%;dMjuP`ICS{w}al0&jUW^ z?ckrtn}9z>>OkIjhhe;DA8>{I0l*I<-GcmKz#~YzkUs|a9i%k!rvMx70Ira41bhY3 zIPyWj1X3RPKEM=G3HdzWZzD}1e+cl;kZwc%Fkosw+D~Nw-}6q;H}VGn54{(O$^*Xo zeZUp+LBPun7{*=5Hv+aJ-Hm)7-~`fVk_MgA1v3w|4Y zjJyeW3(_&1)Uz037%o@C3RK_#o0ZkUs`^`R}4HkZ%MWM|v3fJmANX=8!)O z_z2RY$e#l2d_VdK`98ob(rGFW_+F&Pkv{H0`5R+ zM1B|GTam6neg<&OK_ui&z{ikGKO?P0p5Wgg1(2Tw{1#Fa`ICT+9{{gGo?r*k zM&$bd_aSv7e*o|Sq(0=20bcq?;Nesrumfoql?U91G)CnCA3(}edB96Qh<>N?fE`FP zR30#kbSLt8!1p4(8~Fo(|ABM>`BQ+;{$ub>0`#u6bgFL~9kse3>6yOj49DL@VkO%zP$G{7aH~s?mkk%sK z2)GWZ3Hc!4=D!3Ek?#Zi(I>#4kv|3a+)sg4kT(H;4=IiOA;9LlK_AEm0jKUkLVgDD z38Z%;Z~QIZ_ZhT{$^gFRA3)ob2Ye^e7m+^zc;yk$A>9W&jC2}#f-idjb$t-u1#I{y z^gHs6fJvk{^1A?=A4H!b9|Q~`^&!6z@DoS_$R7rL>rvDh`5C~MeGX$5c@uE@3+Pw6 z5BQWX0_Vs#0$%ygs3-D4!0#g6gZwE#^ItH&kSExObPRcd??XC{`~koRkWM0h4Dj1X zbI6|ryz)yJFUSW02ap~^eiz_dkRC@q4|pq*aTN6d{3z0;$R7rL0_k$(jbn!KOr$H2 zZv=b^(i-GVz#U&f|02H&aQ|09|HvNz{Hw14Kgb^j{NI1Y+=0CDZ}`lkpmXGp0siX0 z(06qIN8oix`;ZR;e(o{!Bb5RC#s7duQJJ5?OBLxb@_m3WJ`I{g-ULh|9Ya13c>gcJ zPmn(b_{?7d56CwHe)4g&9r;`OZq<15K4De;oXfO^U zZvwvenGMDvT=WrdE;3PMgnOT`98pVk&Yri3uryN!8nF|9`MT54aPT+4+6%J z9!7p6;6u-8Fy@dy3HTV&bH-xC!ZQHm} zk>3S)7-=o?1dqlVi~#b-0KbnEME(?DxE1(8ek0%!q-&@Q;JSE&(Sdvr@VAiqkUs!; z%j=Mk-v#(_q%q_V1FqiKVC0c+1Z?RAT_L{_FpqQ)d4jV@hma@OxTV3ki^>DO9O*Ff zCg3ZO?nXWc7(%)S`Hg_>NS{T%5AZ`sv&bI;{GF|68|48f`hYj&^MHSXbdv4^u1SKf zkT(IphjbeGQ-Gfu0N%cc`T#cm|Lt9SaGY0lKfC)$UdxWNiJe4oUdjWb7*n=}0X2jm z%d#UC*({Q5ix8rf_3%2jrHxjO*WnT2wo`?sph+`SC23~g`|ZO)q=aY!g>9O)8YT^D zhM^)2AVSKhlro}pf+o$R{hfQy-TkzZ8k&E~OzoMUfA>50e)oCqUF|)4&pm{62ru=Z z?H`3MA?yc#0cb=x2L2}S9!}5lJD^J}2Ty$rbC$#4Zv#CD&w=;e3H?Dh0PX@#A{+z{ z0AYl~;4ucm+aG1lNfL+Hv2aP>%toY-cs$H zwcuWIZLny=Zjav`bcJ2D9;$6|`&~iKL*C*1YTQ(_8^<)gHRL^N`8`2**cE`>w~>4= zSLaxjzQvK=nLp>t*l5v4*8{|*N;zRAH}TH$IlNY1u-w@W=ez5L*UHD#FO2-S&7Eko z=?4=RM4XYm8FSetpX%{)*4G*4cit@DUpL-aXJ;8sxfxr-Yn8vXj<&k~akcK4cMLnr zaOP8IQC&#-lgmC@rDLW&{LU6HZF!>3zcJ_yZwS+|HR;)NAL(v~yxRT_3%Yt_;=FC9e0< z%8^1EuZO&@M%}m0@I@Q&C;v98Xa&+%_e*toYV6**dhF_IsLr*Y^s4X3$2o=h8ExByw$-6++gG=Z^M6P_Yp%ZtX}2NmR;1mzI<4y4tz=4YskVH7bz3gk zi1&A_exLh>*YE1N!(*q~-%x3PbsBz7n39oRm3{N-vejqT_59ftcB%UQO{Ko7jAtul ztfhBHkvGekxn5>G4I4c(&xVa$wf)-FZFlxFhdZUuo#7j|(2dbLx+=60Yx@=JwCxi8 zxoqmL`eBW<&Na;$=Cx?|N)1A7B`QZF-Z)w)vs%<0a_*m6CbpM@q5E`$Fb zdD;1?0h#G{XFAURsG|=|oU?AG&glg-Z@sB zuhGfsG%cbJJRT1@#)HdO`uG0Tx@!8#wA++#c)c>5a+9`t{8X85TfazuTW+y9V5zjw1<@S426vR-gKoVs59Y|1n2YzvoN{WnBiO%3$hqe=}pbgTM3Q*V}= zd0IUd^>u$x@9`a#*;d*xSF_+*a^d@id}rYF&hI9s54a624&AMOHt7tTx-dI+(UkM+ zvNIok=LY0=<3)7i#75d4_0pxGH9lK6dT3+RA}b+%W!C8GIy>uS>dj^FdtC128|m_i zTG*j#Xj90d+LuKKw=89=Wg9Kqi`Z_( zwj#FEvOOra9X1HqK-ezHwtTkt@*WZI8S(xQ+sD~v!?sPfX|lbI?aXW!i|xVQZwutD zC~z;H0k)a4Et&1iY+q*kAKU%dCdl?ew)L^CkZp==XXd>i-uK~sAhxfueUX0`z&1Fx zkFx!f?V)VHXS+Sy0hL`4due9RocH$Fj>9%2AHcR7wjr_2itSTur(ydK+mHCS0u9KA z?Y0f5KmV42?MG}=VVeot%Gqwj_9eDcvwfQFw`|J}Hsk&G<2~>Kz`qw@8x7kd+4jgb zceWF=4Y>jDu`QGBoC}-}(zA`1ZDDL@V!MzJ<@xYF+t~ul0Na|_=EXKPAJVYRD1b2A z)&dB#T`i2~64J4)i+^*$zqKH=iS5#C#|(2j7-9$XA^ok;j|0FEa0d81kO5|ZZvj67 zegSxEExHzX7qAED0tSIm-~r%KU>f)<;055{0G@yKz%HN}=mtiB`+x_4M}en+Zvp=d z{0g|lYf&T61bhe>0L}sr0bc|D0eA(d#otkv0*$~eKs#_3FamrA_!A%td<}RWco}#d z*ox26M&JX$K_Cd61tx$m0!d&R_*>vb;1__k3GV?rfEM86zzFbrz$3sDKneIK;AcS1 zW{a)_ehWAN+yR^bJ_$Swd(mmQ#4E? z6sCJ<6kg88=rr96&t`m6!hQ4!`XqgdK27)2I2}7VbVhrD#96iu4)x*p!8&D|I@6`a>ad<8M>*W!$g=E}L0p0i4ycm$kMy68 zIFj*k2jjU!P7`qnEY?0M%({#L+!2AN!$8x+OFz#XT41^hu{`5z-RN|NlB7_Xz;8f=zIw=aBPTE zrlIW8v&f_%lu8GiYQ&tF_=WHaxG(h{jS;O6pDK9XJ6CI;xrDheWc1O>iHYCSR z?E-zkXhwOmlv5}#mXeyoqx;oS^5OpSXesGozD303D&7*S9#_t)!|cz>shnj&xoDin zubOn2ukYTyXP__a&>JPIYN?W~oZR|Jjz3C!v}`RU(lKg2I<-ZMR~Lq3$RE}|(oLIn zO2_h`1*pLOGVR1)MU07z}XJIdny{bESIF-ntBav0|HCAd)UioAxKkef+X4U&Dp&6ZW zS_rCBw&H$;YMENItA$l-cXhN{oK@pd+RBw0f|V;Z1ZFs^voZ2&t-&i;C96}5qOK!e zBM-;YRsB*|KYL=VmX=osR6s^r-6qhj<_XxKN2Zf`;6T*)P&j^1<_@}~e2-jb$%h@HoUwA*{Frb? zcv|>r;b(=P6aKF7g78m;|3ml z;aF9=C**ln_$A?G;kxTZUxarGHw$+P4+xJ6pA-Iqur2%z;qM6lT)6fIUCuV)9m2N= z9~8bzcvSeD@Mndmgug00EBvDHPlT6+FTGKhyHof!;ec>Z_@wZsg+D7iC7cnS5q?hi zMd4S4Yj4u!T`s&sc(-ti@L}OG;m--jgp0yY3qL3PlJHN3-w>{Qn=W^|@DAZyh3^m^ z5)KQW6MjfICH#c&w}ihdyeRy-un%iB|MLsqCT#Td!uqQF=fe7``{Ba+s{7%>`l|ck z!uqQF;jON(WbF-&;0qo6yBROFyC`&u~urH&wk?B5u#)ir1lY?!_w>L_Bf@RJf zU;0;;bg3(t`CHbW2yT=aRNv$`co5T#JB|19y^ch?Jhv-P;d}TlTza=WaSMpvCr=%4 z4o-BNJRKTlXW_7`c`AOx_EvSvjHhD|x2#r+>1&=2T%;p?0~_L^=Kwo2Zh^;{?vW$d z7vn7=+HWbhGy(W1;l72>5mi}iB;UR&rm|Q0sD-;+;P__$>0#w4v724i(x0;wTEbV+ zstpJDPfD?@V`SvS>99$R!5uw|BUl_Gu5k_xpMje%qIcFnWAuRRiw^dm<~=UGE5Dax z4h?G`>jV3u{csJ0NPT+`eWa%A(h!u&zIt#n%}7-D;sjfb>GJN8@;JbT z)Z2S}FtfcZyI*<#rFzMZBcLEsmQV3!6^1A>EDT+HV?yEd(hR(p7gM9 zaEiX^>Q!p;JD%RtT44@*dhd-4hvCd~YzU{OtiGf0-i{RllZ;i5K41+=0iJa zQkN_c{h@`6nES&Rp$QK0T>$i_);%!KjL{<&cIs6YX-nS?O_aAHlGo!_Bm&Ct0iJ`k8g6KcY(cxe9S94b(c?cWe(FwT8!dB1T{hWXXQ?7H&3zO^~0|pl~#1^p1)| z*-&ueY>hjd;2VHi*g2}+8R;JB9zp9Gli{(qbppPdV8>R+-tV2uT_%B+2MY+Pbotjy@O?Y`4)!`-0>V38$~{T zE#r>m4>g>CQ)%RqgjVI5>NX`SZ%We#`57O1LFRJy$N8y)FXkSU+pV-Y1NVsFR}%Mg ztaO)J%;}tx=-o@cx#|d|Sb`AW1$3LUP9l?s3NI+U({} z1g(EZs8v0+^PSPiwbzZ!MOnnqMUdR%mf_xyi{E72MjO9euywHczRHO z?A9~4dqmGa+QQFj-<{}U z9mZWMqkM_BH2pG`uB)T(;#ko?KZjNK9psRHUo<9Ak*IPHRi3-y7#F?Y=fPHQxxer6 zXeESaG8oD65fjn+9`$sO92!2ZEXVhGx<~u^Pbd?IwqSjRCBu=E*shiif^QGcA-J@5 zj2+5)&>>qrcK8d+!zyL6nDOYQuoBAh%zMZGOWfYtUcQ548{Yj*#fSEF9^BVat|~R6 zuK$-f6}h*6bWC~Nq+3xJC%W49b(pFK5O)D@tq%@$?dz}jX%%W zoB8!LFI?aYJ#e81esg;Or(rjvcHScX8^`%<5B?I3wZ#Ilo>(vziiKm**m!IrHW{0W z#bS1BIyMt4#b#r3vH93SY%#VJTaHoO8~4TQ;|=k~xIf+$Z;rRc1M!}CFdmABpNhxgc6>TM6EDSQ<8$%(_(FU!z7$`MQ^K3@CF&CmiN=IK(UfRTv?T(Go9#CT#NF`1Z3#1eL5Ix&+dC1w+IiTT7rVllClSWZyVoAf2?lMTtnq(9k|Y)-Z% z1IeCbFd0gQlhNdOaw0jIoJz)$c5*s7lPo1?lXJ=WWxs+T^Qp%h1rRq}+sm7E) z)s$*ZwWR{7o>VXuN`+I=)OczlHJO@9#Zq=^IyI9jrDjuesrl4GYB9BxT24{goA#ya z(+%myv_IXHZcewQ1L>Z0Fda&V)6w*JdLliUo=V5kc6vHJlP;xa({t(h^g?v}FRBo=h+k%7in~%y?!ZGntvn#4>hfIx~|gWo9#Tnfc5@ zW-+srS_T=iyOdqdlI^v9cD>zTH`;!?$!@mW?10^42knp@wxjmAJz-DUQ+CX@?P+_) zF4?p8oIP(Z*o*d(y=+s?oAc%Ba}Bx1oIlr;YtFUh0=b@CFc->&bJ5&*ZX!3Co65y< zc5XU1lPl$Bb91@*+(K?Kx0GAXQQn*P-OVWKcum@32yc44|OQz#W?3v-3}!a`xOuvAzsP|;iT73+%)#m1t)*i>vTwiN@# zo?@^VDu#>E;&^eQI9Z%3#)@`vx;RrT6=#cc#rfhwak02mTrSdi?|I+(`t!}_d(MZ? zPn?gPpE*Bwe(^j#UjMlN@wUfl68;u2y@E0ersH@Bd(^y}$sj!G!F|L;0X65wWwsG? ovH|+o3|$OD567W{G3Z|jy0?(Rp$v6fXno8dYl`9JxA^bB0S+&kq5uE@ literal 0 HcmV?d00001 diff --git a/make.bat b/make.bat index ff85aef4d8..1d1b8a0c3d 100644 --- a/make.bat +++ b/make.bat @@ -69,8 +69,8 @@ if %ERRORLEVEL% NEQ 0 ( ) echo rebuild from source (twice, in case of C definitions changes) -v2.exe -os msvc -o v3.exe v.v -v3.exe -os msvc -o v.exe -prod v.v +v2.exe -o v3.exe v.v +v3.exe -cc msvc -o v.exe -prod v.v if %ERRORLEVEL% NEQ 0 ( echo V failed to build itself goto :compileerror diff --git a/vlib/compiler/cc.v b/vlib/compiler/cc.v index e2f5bcd4ed..0959a9585a 100644 --- a/vlib/compiler/cc.v +++ b/vlib/compiler/cc.v @@ -48,7 +48,7 @@ fn (v mut V) cc() { } } $if windows { - if v.os == .msvc { + if v.pref.ccompiler == 'msvc' { v.cc_msvc() return } @@ -119,7 +119,7 @@ fn (v mut V) cc() { a << ' -rdynamic ' // needed for nicer symbolic backtraces } - if v.os != .msvc && v.os != .freebsd { + if v.pref.ccompiler != 'msvc' && v.os != .freebsd { a << '-Werror=implicit-function-declaration' } @@ -314,7 +314,11 @@ fn (c mut V) cc_windows_cross() { mut args := '-o $c.out_name -w -L. ' cflags := c.get_os_cflags() // -I flags - args += cflags.c_options_before_target() + args += if c.pref.ccompiler == 'msvc' { + cflags.c_options_before_target_msvc() + } else { + cflags.c_options_before_target() + } mut libs := '' if c.pref.build_mode == .default_mode { libs = '"$v_modules_path/vlib/builtin.o"' @@ -327,7 +331,11 @@ fn (c mut V) cc_windows_cross() { } } args += ' $c.out_name_c ' - args += cflags.c_options_after_target() + args += if c.pref.ccompiler == 'msvc' { + cflags.c_options_after_target_msvc() + } else { + cflags.c_options_after_target() + } println('Cross compiling for Windows...') winroot := '$v_modules_path/winroot' if !os.dir_exists(winroot) { @@ -372,7 +380,7 @@ fn (c &V) build_thirdparty_obj_files() { for flag in c.get_os_cflags() { if flag.value.ends_with('.o') { rest_of_module_flags := c.get_rest_of_module_cflags( flag ) - if c.os == .msvc { + if c.pref.ccompiler == 'msvc' { build_thirdparty_obj_file_with_msvc(flag.value, rest_of_module_flags) } else { diff --git a/vlib/compiler/cflags.v b/vlib/compiler/cflags.v index da6d4a2cb7..8b6f1cd47a 100644 --- a/vlib/compiler/cflags.v +++ b/vlib/compiler/cflags.v @@ -26,7 +26,7 @@ fn (v &V) get_os_cflags() []CFlag { || (flag.os == 'linux' && v.os == .linux) || (flag.os == 'darwin' && v.os == .mac) || (flag.os == 'freebsd' && v.os == .freebsd) - || (flag.os == 'windows' && (v.os == .windows || v.os == .msvc)) { + || (flag.os == 'windows' && v.os == .windows) { flags << flag } } @@ -140,10 +140,10 @@ fn (table mut Table) parse_cflag(cflag string, mod string) { } //TODO: implement msvc specific c_options_before_target and c_options_after_target ... +fn (cflags []CFlag) c_options_before_target_msvc() string { return '' } +fn (cflags []CFlag) c_options_after_target_msvc() string { return '' } + fn (cflags []CFlag) c_options_before_target() string { - $if msvc { - return '' - } // -I flags, optimization flags and so on mut args:=[]string for flag in cflags { @@ -155,9 +155,6 @@ fn (cflags []CFlag) c_options_before_target() string { } fn (cflags []CFlag) c_options_after_target() string { - $if msvc { - return '' - } // -l flags (libs) mut args:=[]string for flag in cflags { diff --git a/vlib/compiler/fn.v b/vlib/compiler/fn.v index dd88225b07..617ab6b317 100644 --- a/vlib/compiler/fn.v +++ b/vlib/compiler/fn.v @@ -326,7 +326,7 @@ fn (p mut Parser) fn_decl() { p.error_with_token_index('fn main must have no arguments and no return values', f.fn_name_token_idx) } } - dll_export_linkage := if p.os == .msvc && p.attr == 'live' && p.pref.is_so { + dll_export_linkage := if p.pref.ccompiler == 'msvc' && p.attr == 'live' && p.pref.is_so { '__declspec(dllexport) ' } else if p.attr == 'inline' { 'static inline ' @@ -590,7 +590,7 @@ fn (p mut Parser) async_fn_call(f Fn, method_ph int, receiver_var, receiver_type // Create thread object tmp_nr := p.get_tmp_counter() thread_name = '_thread$tmp_nr' - if p.os != .windows && p.os != .msvc { + if p.os != .windows { p.genln('pthread_t $thread_name;') } tmp2 := p.get_tmp() @@ -599,7 +599,7 @@ fn (p mut Parser) async_fn_call(f Fn, method_ph int, receiver_var, receiver_type parg = ' $tmp_struct' } // Call the wrapper - if p.os == .windows || p.os == .msvc { + if p.os == .windows { p.genln(' CreateThread(0,0, $wrapper_name, $parg, 0,0);') } else { diff --git a/vlib/compiler/gen_c.v b/vlib/compiler/gen_c.v index 194b6756a0..abc2664f6c 100644 --- a/vlib/compiler/gen_c.v +++ b/vlib/compiler/gen_c.v @@ -75,7 +75,7 @@ fn (p mut Parser) gen_var_decl(name string, is_static bool) string { } fn (p mut Parser) gen_fn_decl(f Fn, typ, str_args string) { - dll_export_linkage := if p.os == .msvc && p.attr == 'live' && p.pref.is_so { + dll_export_linkage := if p.pref.ccompiler == 'msvc' && p.attr == 'live' && p.pref.is_so { '__declspec(dllexport) ' } else if p.attr == 'inline' { 'static inline ' diff --git a/vlib/compiler/live.v b/vlib/compiler/live.v index f17c6e2ac8..7f286d4d7e 100644 --- a/vlib/compiler/live.v +++ b/vlib/compiler/live.v @@ -19,7 +19,7 @@ fn (v &V) generate_hotcode_reloading_compiler_flags() []string { fn (v &V) generate_hotcode_reloading_declarations() { mut cgen := v.cgen - if v.os != .windows && v.os != .msvc { + if v.os != .windows { if v.pref.is_so { cgen.genln('pthread_mutex_t live_fn_mutex;') } @@ -42,7 +42,7 @@ fn (v &V) generate_hotcode_reloading_main_caller() { mut cgen := v.cgen cgen.genln('') file_base := os.filename(v.dir).replace('.v', '') - if !(v.os == .windows || v.os == .msvc) { + if v.os != .windows { // unix: so_name := file_base + '.so' cgen.genln(' char *live_library_name = "$so_name";') @@ -51,7 +51,7 @@ fn (v &V) generate_hotcode_reloading_main_caller() { cgen.genln(' pthread_create(&_thread_so , NULL, &reload_so, live_library_name);') } else { // windows: - so_name := file_base + if v.os == .msvc {'.dll'} else {'.so'} + so_name := file_base + if v.pref.ccompiler == 'msvc' {'.dll'} else {'.so'} cgen.genln(' char *live_library_name = "$so_name";') cgen.genln(' live_fn_mutex = CreateMutexA(0, 0, 0);') cgen.genln(' load_so(live_library_name);') @@ -78,8 +78,8 @@ fn (v &V) generate_hot_reload_code() { } mut msvc := '' - if v.os == .msvc { - msvc = '-os msvc' + if v.pref.ccompiler == 'msvc' { + msvc = '-cc msvc' } so_debug_flag := if v.pref.is_debug { '-g' } else { '' } @@ -104,7 +104,7 @@ void lfnmutex_print(char *s){ } ') - if v.os != .windows && v.os != .msvc { + if v.os != .windows { cgen.genln(' #include void* live_lib=0; diff --git a/vlib/compiler/msvc.v b/vlib/compiler/msvc.v index 2696b5f6ad..9cd4eee156 100644 --- a/vlib/compiler/msvc.v +++ b/vlib/compiler/msvc.v @@ -396,8 +396,8 @@ fn build_thirdparty_obj_file_with_msvc(path string, moduleflags []CFlag) { //println('cfiles: $cfiles') - btarget := moduleflags.c_options_before_target() - atarget := moduleflags.c_options_after_target() + btarget := moduleflags.c_options_before_target_msvc() + atarget := moduleflags.c_options_after_target_msvc() cmd := '""$msvc.full_cl_exe_path" /volatile:ms /Zi /DNDEBUG $include_string /c $btarget $cfiles $atarget /Fo"$obj_path""' //NB: the quotes above ARE balanced. println('thirdparty cmd line: $cmd') diff --git a/vlib/compiler/vhelp.v b/vlib/compiler/vhelp.v index 69f7d13d1e..afbaa67ae7 100644 --- a/vlib/compiler/vhelp.v +++ b/vlib/compiler/vhelp.v @@ -26,7 +26,7 @@ const ( you don\'t have to repeat them. You can set it like this: `export VFLAGS="-cc clang -debug"` on *nix, - `set VFLAGS=-os msvc` on Windows. + `set VFLAGS=-cc msvc` on Windows. Options/commands: -h, help Display this information. diff --git a/vlib/os/os.v b/vlib/os/os.v index 02cc1ed1ff..df893b5274 100644 --- a/vlib/os/os.v +++ b/vlib/os/os.v @@ -600,9 +600,6 @@ pub fn user_os() string { $if dragonfly { return 'dragonfly' } - $if msvc { - return 'windows' - } $if android{ return 'android' }