<div dir="ltr">Trying to get back on PR1950 today.. fighting to get things building again after a recent update-checkout.<div><br></div><div>-Shawn<br><br><div class="gmail_quote"><div dir="ltr">On Thu, Apr 21, 2016 at 7:18 PM Sangjin Han via swift-dev <<a href="mailto:swift-dev@swift.org">swift-dev@swift.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi Joel,</div><div><br></div><div>I list some URLs.</div><div><br></div><div>Bug/Feature report in <a href="http://bugs.swift.org" target="_blank">http://bugs.swift.org</a></div><div>-------------------------------------------</div><div>SR-34 Port Swift to Windows (<a href="https://bugs.swift.org/browse/SR-34" target="_blank">https://bugs.swift.org/browse/SR-34</a>)</div><div>SR-612 In Cygwin port, print() crashed at hook (<a href="https://bugs.swift.org/browse/SR-612" target="_blank">https://bugs.swift.org/browse/SR-612</a>)</div><div>SR-1128 autolink extraction does not work on Cygwin (<a href="https://bugs.swift.org/browse/SR-1128" target="_blank">https://bugs.swift.org/browse/SR-1128</a>)</div><div>SR-1131 Build script for MSVC on Windows (<a href="https://bugs.swift.org/browse/SR-1131" target="_blank">https://bugs.swift.org/browse/SR-1131</a>)</div><div><br></div><div><br></div><div>Pull Requsts in <a href="http://github.com/apple/swift" target="_blank">http://github.com/apple/swift</a> </div><div>---------------------------------------------</div><div>[stdlib/msvc] Runtime with MSVC library (<a href="https://github.com/apple/swift/pull/1918" target="_blank">https://github.com/apple/swift/pull/1918</a>)</div><div>-- Currently working on. Waiting passing PR #1950.</div><div><br></div><div>[swiftc/msvc] Compiling with MSVC library (<a href="https://github.com/apple/swift/pull/1516" target="_blank">https://github.com/apple/swift/pull/1516</a>)</div><div>-- Waiting some more opinions or reviews.</div><div><br></div><div>[runtime] enhanced and refactored recently added Mutex abstraction (<a href="https://github.com/apple/swift/pull/1950" target="_blank">https://github.com/apple/swift/pull/1950</a>)</div><div>-- This is not about porting, but it enhances portability by removing POSIX pthread. After merging, PR #1918 will be more simpler.</div><div><br></div><div>IRGen: add support for DLL Storage semantics (<a href="https://github.com/apple/swift/pull/2080" target="_blank">https://github.com/apple/swift/pull/2080</a>)</div><div>-- I think this is the most important topic for Windows/MSVC porting, but not Cygwin port.</div><div><br></div><div><br></div><div>Issues in Mailing list</div><div>----------------------</div><div>Subject: "swift (ABI) and Windows" in <a href="https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20160404/subject.html" target="_blank">https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20160404/subject.html</a> and <a href="https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20160411/subject.html" target="_blank">https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20160411/subject.html</a> </div><div><br></div><div>Subject: "long double usage in swift" in <a href="https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20160321/subject.html" target="_blank">https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20160321/subject.html</a></div><div><br></div><div><br></div><div>My Repo for Patch</div><div>-----------------</div><div>Repository: <a href="https://github.com/tinysun212/swift-windows/tree/upstream-with-windows" target="_blank">https://github.com/tinysun212/swift-windows/tree/upstream-with-windows</a></div><div>binary for MSVC: <a href="https://github.com/tinysun212/swift-windows/releases/tag/swift-msvc-20160418" target="_blank">https://github.com/tinysun212/swift-windows/releases/tag/swift-msvc-20160418</a></div><div>binary for Cygwin: <a href="https://github.com/tinysun212/swift-windows-bin/tree/master/swift-cygwin" target="_blank">https://github.com/tinysun212/swift-windows-bin/tree/master/swift-cygwin</a></div><div><br></div><div><br></div><div>Help</div><div>----</div><div>If you are also interested in Cygwin port, it is also very helpful to verify/check the build manual (it is placed at /BUILD-CYGWIN-64.md in root of my repo), so that we make a PR for master, and everyone build the Cygwin port without my forked repo.</div><div><br></div><div>For building MSVC port, it will be better waiting several days until I prepare a draft build manual - current build description is too dirty (/misc/Build_msvc.txt).</div><div><br></div><div>If you once run the compilers, you can see they are lack compared to Linux or OS X.</div><div><br></div><div>All of that is only on swift port. For swift-lldb, swift-corelibs-foundation, swift-corelibs-libdispatch, I have not touched at all.</div></div><div dir="ltr"><div><br></div><div>Han Sangjin<br></div></div><div dir="ltr"><div><br></div><div class="gmail_extra"><div class="gmail_quote">2016-04-22 8:20 GMT+09:00 Joel Van Eenwyk <span dir="ltr"><<a href="mailto:joel.vaneenwyk@gmail.com" target="_blank">joel.vaneenwyk@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Han,<div><br></div><div>Thanks for the details! Do you have a custom fork or branch with these changes? I'd love to be able to test this out and contribute if you think that could help you out. I can get started on testing what you have now as soon as tomorrow.</div><div><br></div><div>Cheers,</div><div><br></div><div>--Joel</div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 21, 2016 at 4:15 PM, Sangjin Han via swift-dev <span dir="ltr"><<a href="mailto:swift-dev@swift.org" target="_blank">swift-dev@swift.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>I'm writing code for Windows/Cygwin port on my free time. There is no well documented information about that. Instead I'll give you some information and several links for you.</div><div><br></div><div>1. Cygwin port</div><div> Cygwin is a POSIX environment on Windows. Porting to Cygwin is relatively easer than Windows native. This is x86_64-unknown-windows-cygwin in llvm target name.</div><div> </div><div> Currently, you can build the swift compiler and standard library if you applying my 'informal' hacked patch and build manual.</div><div> </div><div> To-be tasks are verifying and sharing the build manual, porting the autolink-extract module, passing failed test code, etc.</div><div> </div><div><br></div><div>2. Window port</div><div> This is x86_64-pc-windows-msvc in llvm target name, so I call this 'Windows with MSVC library' when confusing with Cygwin - Windows with Cygwin DLL. Porting to Windows is harder than Cygwin. Swift source uses C++11 standard with some POSIX functions, GNU extension functions as well as platform specific codes for OS X or Linux, and the build script for Swift supposed to run on BASH shell. To compile the Swift source, we should use the Clang compiler for clang specific feature.</div><div> </div><div> Currently, there is a 'informal' compiler that barely compiles Hello.swift.</div><div> </div><div> To-be tasks are the solving problems, dllimport/dllexport problem for DLL, build script problem, plus all tasks of Cygwin's.</div><div><br></div><div>I'll give you related links in next post.</div><span><font color="#888888"><div><br></div><div>Han Sangjin</div><div><br></div></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">2016-04-22 3:29 GMT+09:00 Dmitri Gribenko <span dir="ltr"><<a href="mailto:gribozavr@gmail.com" target="_blank">gribozavr@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">CC'ing Han, the maintainer of the Cygwin port.<br>
<div><div><br>
On Wed, Apr 20, 2016 at 10:59 PM, Joel Van Eenwyk via swift-dev<br>
<<a href="mailto:swift-dev@swift.org" target="_blank">swift-dev@swift.org</a>> wrote:<br>
> Hi all,<br>
><br>
> I'm a very new user of Swift and interested in finding ways to contribute to<br>
> the project. I can happily work with the Linux port of the project, but I<br>
> have a lot of Windows development experience and would probably be most<br>
> useful there. Where can I find information about the current status of a<br>
> Windows port (if any)? Perhaps I'm blind but finding any 'official'<br>
> information about a Windows version has been quite tricky. :)<br>
><br>
> For background on me, I'm primarily a game programmer and the company I work<br>
> for (Havok) recently got acquired by Microsoft. Working on some open source<br>
> projects is just something I'm interested in exploring in my free time.<br>
><br>
> All the best,<br>
><br>
> --Joel<br>
><br>
</div></div>> _______________________________________________<br>
> swift-dev mailing list<br>
> <a href="mailto:swift-dev@swift.org" target="_blank">swift-dev@swift.org</a><br>
> <a href="https://lists.swift.org/mailman/listinfo/swift-dev" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-dev</a><br>
><br>
<span><font color="#888888"><br>
<br>
<br>
--<br>
main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if<br>
(j){printf("%d\n",i);}}} /*Dmitri Gribenko <<a href="mailto:gribozavr@gmail.com" target="_blank">gribozavr@gmail.com</a>>*/<br>
</font></span></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
swift-dev mailing list<br>
<a href="mailto:swift-dev@swift.org" target="_blank">swift-dev@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-dev" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-dev</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></div><br></div></div>
_______________________________________________<br>
swift-dev mailing list<br>
<a href="mailto:swift-dev@swift.org" target="_blank">swift-dev@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-dev" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-dev</a><br>
</blockquote></div></div></div>