Review Request 117078: Allow compiling kio on windows

Alexander Richardson arichardson.kde at googlemail.com
Thu Apr 10 13:17:15 UTC 2014



> On March 28, 2014, 4:19 p.m., David Faure wrote:
> > src/core/kioglobal_p.h, line 93
> > <https://git.reviewboard.kde.org/r/117078/diff/2/?file=257279#file257279line93>
> >
> >     How is this different from QFileInfo::symLinkTarget()? Why not just port to that?

>From a quick look through the Qt sources it looks like it does the same thing.


> On March 28, 2014, 4:19 p.m., David Faure wrote:
> > src/core/kioglobal_p_win.cpp, line 83
> > <https://git.reviewboard.kde.org/r/117078/diff/2/?file=257281#file257281line83>
> >
> >     Why not QFileInfo::isSymLink()?

This only works for .lnk files, for real symbolic links it returns false. Guess that needs some more work in Qt.


> On March 28, 2014, 4:19 p.m., David Faure wrote:
> > src/core/kioglobal_p_win.cpp, line 61
> > <https://git.reviewboard.kde.org/r/117078/diff/2/?file=257281#file257281line61>
> >
> >     Bonus points for contributing this to Qt...

There is QFile::link(), but that only creates .lnk files (and doesn't add the .lnk suffix automatically, so they usually don't work). I guess I could let it create a symbolic link first and if that fails fall back to the .lnk files. Same questiong here as with isProcessAlive()


> On March 28, 2014, 4:19 p.m., David Faure wrote:
> > src/core/kioglobal_p_win.cpp, line 27
> > <https://git.reviewboard.kde.org/r/117078/diff/2/?file=257281#file257281line27>
> >
> >     Bonus points for contributing a static method to QProcess...

Makes sense, will try to contribute that. Can it be added here or is that a problem for contributing it to Qt?


- Alexander


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/117078/#review54455
-----------------------------------------------------------


On April 4, 2014, 9:20 p.m., Alexander Richardson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/117078/
> -----------------------------------------------------------
> 
> (Updated April 4, 2014, 9:20 p.m.)
> 
> 
> Review request for KDE Frameworks.
> 
> 
> Repository: kio
> 
> 
> Description
> -------
> 
> A series of commits (can submit separately if necessary):
> ---
> Add S_IXUSR, IRUSR, etc. definitions for Windows
> ---
> Add KIOPrivate::isProcessAlive() and KIOPrivate::sendTerminateSignal()
> 
> kill() does not work on Windows, therefore a WIN32 implementation is needed
> in order to compile slave.cpp
> ---
> Add KIOPrivate::changeOwnership() to avoid directly calling chown()
> 
> Additionally use KUserId/KGroupId instead of uid_t/gid_t.
> This allows compiling chmodjob.cpp on Windows.
> 
> KIOPrivate::changeOwnership is a stub on Windows. However, it has always
> been like that with the kdewin chmod() implementation, so this is not a
> regression from kdelibs4.
> ---
> Add KIOPrivate::createSymlink() to avoid using symlink() directly
> ---
> Minor Windows compile fixes
> ---
> Use KUser in KPropertiesDialog
> 
> This means no more need for getpwent(), etc -> works on Windows
> ---
> Export the KIOPrivate functions
> ---
> Fix kio_http build on Windows
> ---
> No longer use uid_t/gid_t in kio_file
> ---
> Allow compiling kurlcompletion.cpp on windows
> ---
> Add a fake QT_LSTAT for Windows
> 
> This just calls QT_STAT and adds QT_STAT_LNK flag to st_mode if it is a
> symlink
> ---
> Use KUser in kpropertiesdialog.cpp -> no more getgrouplist
> 
> 
> Diffs
> -----
> 
>   autotests/fileundomanagertest.cpp 3f209f89cc0e2ac48d8eaef7ee73ec18abca9a4c 
>   autotests/globaltest.cpp 4367e53b44e077c566316081e21f429ac15b74a0 
>   autotests/kdirlistertest.cpp 10a970416b8874f1e136b460d05378f8f3a86810 
>   autotests/kfileitemtest.h dc1808e726cf6af1605cfda520c7df3832225cc1 
>   autotests/kfileitemtest.cpp 38bd87f4e9facd8e52e9e5fbd98b16011c866b5a 
>   autotests/kiotesthelper.h eb9f0f3019deb63506c2a173d700b78daa95ae10 
>   src/core/CMakeLists.txt d897e370baedbe06b267934c123acee7a149adff 
>   src/core/chmodjob.cpp 271869bc2a643d715670560b7920efdbc948e560 
>   src/core/job_error.cpp 1551959b6a3cf7060736bea361e840f82651a332 
>   src/core/kfileitem.cpp 7364f87257b5d7dfb760b1c6e5b5d04e1d15a19d 
>   src/core/kioglobal_p.h PRE-CREATION 
>   src/core/kioglobal_p_unix.cpp PRE-CREATION 
>   src/core/kioglobal_p_win.cpp PRE-CREATION 
>   src/core/slave.cpp 787ffcf3cc97a73fb29c2172ed6b8df19ac016fc 
>   src/ioslaves/file/file.h 6477df7cf0d26bf4f581151e1ce8e6c1115a221c 
>   src/ioslaves/file/file.cpp a642a524c3022ce7f039f90d5bc1f577c88631dc 
>   src/ioslaves/file/file_win.cpp b0e433e5438e3c45f2f021bf073cb3cca8f4f923 
>   src/ioslaves/ftp/ftp.cpp 79f6144264c03f506309037ed6e8ce429f6c30f0 
>   src/ioslaves/http/http.cpp de1a1ddde544229689bd22cd69491a46b8c0dddb 
>   src/widgets/CMakeLists.txt 61e4db3566bad08baaa2e7e90b862ddfc8b957f7 
>   src/widgets/config-getgrouplist.h.cmake 6847a19d60be4eb5c2b65fb86258f7368848e6ab 
>   src/widgets/getgrouplist-fake.c dbe77067371dcedb80cea684fb3cd5f42ed72805 
>   src/widgets/kpropertiesdialog.cpp 8e0a9ba0a806fdb1c9e92de00dfb1c8a1449978c 
>   src/widgets/kurlcompletion.cpp 3f309257c187358de0fd66f9d67f09a712fdf7d6 
> 
> Diff: https://git.reviewboard.kde.org/r/117078/diff/
> 
> 
> Testing
> -------
> 
> compiles, tests still the same as before (i.e. not passing)
> 
> 
> Thanks,
> 
> Alexander Richardson
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140410/96d934a7/attachment.html>


More information about the Kde-frameworks-devel mailing list