Hi Rasmus,
this will work. Feel free to push. However, there are some rough angles in this patch . I could fix them later.
- 2 parallel string arrays
Would be better (easier to read) to have
static struct
{ wstring exe, wstring symlink}
symlinks[] =
{
{L"mysqld.exe", L"mariadbd.exe"}
,
....
}
It is easier to read, because you do have to rely on the positions in the arrays to correspond.
- it would be better if this array was stored in a CMake-generated file, based on the information that is already in CMakeLists.txt . So you would not have to change it every time new exe is added.
- C++17 is an overkill, for that one symlink operation. We're on Windows, this is part of the Windows installer , it will never will be ported to anything else. Given that, CreateSymbolicLinkW() does what needs to do done.
Some people are still using VS2015, (we recently had a bug report), and I have no idea if C++ 17 filesystem still works with it. We can also build with clang-cl, and do not know if clang-cl supports C++17 filesystem.
The following commits have wrongly committed as
MDEV-19781. It was supposed to be forMDEV-19871. please ignore the followingcommits:
commit 41f6e68878df46dd7abc8a98234f58a1fa030592
Author: Thirunarayanan Balathandayuthapani <thiru@mariadb.com>
Date: Mon Jul 1 21:58:20 2019 +0530
MDEV-19781 Add page id matching check in innochecksum tool
commit 40c1f4bd4cdd8f8ed69c466e151a2c52f7b79b72
Author: Thirunarayanan Balathandayuthapani <thiru@mariadb.com>
Date: Mon Jul 1 20:21:26 2019 +0530
MDEV-19781 Add page id matching check in innochecksum tool
commit 0c6514eece98d6817bdf11830244c068b17bd06b
Author: Marko Mäkelä <marko.makela@mariadb.com>
Date: Tue Jul 2 21:33:54 2019 +0300
MDEV-19781: Skip the test for embedded server