From e315dc5a48e9490bc59d2a4e04796670399b2f9b Mon Sep 17 00:00:00 2001 From: Linquize Date: Sat, 19 Jul 2014 20:13:56 +0800 Subject: [PATCH 1/6] Make Release|Win32 configuration compile --- visual_studio/serial/serial.vcxproj | 6 +++++- visual_studio/test_serial/test_serial.vcxproj | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/visual_studio/serial/serial.vcxproj b/visual_studio/serial/serial.vcxproj index 0465ba7..7a42782 100644 --- a/visual_studio/serial/serial.vcxproj +++ b/visual_studio/serial/serial.vcxproj @@ -21,7 +21,7 @@ MultiByte - Application + StaticLibrary false true MultiByte @@ -56,12 +56,16 @@ MaxSpeed true true + ..\..\..\serial\include;%(AdditionalIncludeDirectories) true true true + + setupapi.lib;%(AdditionalDependencies) + diff --git a/visual_studio/test_serial/test_serial.vcxproj b/visual_studio/test_serial/test_serial.vcxproj index 7a817bc..3dd7771 100644 --- a/visual_studio/test_serial/test_serial.vcxproj +++ b/visual_studio/test_serial/test_serial.vcxproj @@ -53,6 +53,7 @@ MaxSpeed true true + ..\..\..\serial\include true From d107487228418494797e061ec22931422e5ba922 Mon Sep 17 00:00:00 2001 From: Linquize Date: Sat, 19 Jul 2014 20:46:16 +0800 Subject: [PATCH 2/6] Add tags to VS projects, specifically, test_serial is a console application --- visual_studio/serial/serial.vcxproj | 2 ++ visual_studio/test_serial/test_serial.vcxproj | 2 ++ 2 files changed, 4 insertions(+) diff --git a/visual_studio/serial/serial.vcxproj b/visual_studio/serial/serial.vcxproj index 7a42782..04204c9 100644 --- a/visual_studio/serial/serial.vcxproj +++ b/visual_studio/serial/serial.vcxproj @@ -48,6 +48,7 @@ setupapi.lib;%(AdditionalDependencies) + Windows @@ -65,6 +66,7 @@ setupapi.lib;%(AdditionalDependencies) + Windows diff --git a/visual_studio/test_serial/test_serial.vcxproj b/visual_studio/test_serial/test_serial.vcxproj index 3dd7771..2d6b1c1 100644 --- a/visual_studio/test_serial/test_serial.vcxproj +++ b/visual_studio/test_serial/test_serial.vcxproj @@ -45,6 +45,7 @@ true + Console @@ -59,6 +60,7 @@ true true true + Console From 60bb787f93c49e8e9723516b4255dca955a28307 Mon Sep 17 00:00:00 2001 From: Linquize Date: Sat, 19 Jul 2014 20:49:08 +0800 Subject: [PATCH 3/6] Add x64 Platform to VS project --- visual_studio/serial/serial.vcxproj | 57 +++++++++++++++++++ visual_studio/test_serial/test_serial.vcxproj | 51 +++++++++++++++++ visual_studio/visual_studio.sln | 10 ++++ 3 files changed, 118 insertions(+) diff --git a/visual_studio/serial/serial.vcxproj b/visual_studio/serial/serial.vcxproj index 04204c9..a78cbed 100644 --- a/visual_studio/serial/serial.vcxproj +++ b/visual_studio/serial/serial.vcxproj @@ -5,10 +5,18 @@ Debug Win32 + + Debug + x64 + Release Win32 + + Release + x64 + {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD} @@ -20,21 +28,38 @@ true MultiByte + + StaticLibrary + true + MultiByte + StaticLibrary false true MultiByte + + StaticLibrary + false + true + MultiByte + + + + + + + @@ -51,6 +76,20 @@ Windows + + + Level3 + Disabled + ..\..\..\serial\include;%(AdditionalIncludeDirectories) + + + true + + + setupapi.lib;%(AdditionalDependencies) + Windows + + Level3 @@ -69,6 +108,24 @@ Windows + + + Level3 + MaxSpeed + true + true + ..\..\..\serial\include;%(AdditionalIncludeDirectories) + + + true + true + true + + + setupapi.lib;%(AdditionalDependencies) + Windows + + diff --git a/visual_studio/test_serial/test_serial.vcxproj b/visual_studio/test_serial/test_serial.vcxproj index 2d6b1c1..83c9f66 100644 --- a/visual_studio/test_serial/test_serial.vcxproj +++ b/visual_studio/test_serial/test_serial.vcxproj @@ -5,10 +5,18 @@ Debug Win32 + + Debug + x64 + Release Win32 + + Release + x64 + {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8} @@ -20,21 +28,38 @@ true MultiByte + + Application + true + MultiByte + Application false true MultiByte + + Application + false + true + MultiByte + + + + + + + @@ -48,6 +73,17 @@ Console + + + Level3 + Disabled + ..\..\..\serial\include + + + true + Console + + Level3 @@ -63,6 +99,21 @@ Console + + + Level3 + MaxSpeed + true + true + ..\..\..\serial\include + + + true + true + true + Console + + diff --git a/visual_studio/visual_studio.sln b/visual_studio/visual_studio.sln index 7c9fb7a..d1b4a7a 100644 --- a/visual_studio/visual_studio.sln +++ b/visual_studio/visual_studio.sln @@ -8,17 +8,27 @@ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 Release|Win32 = Release|Win32 + Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Debug|Win32.ActiveCfg = Debug|Win32 {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Debug|Win32.Build.0 = Debug|Win32 + {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Debug|x64.ActiveCfg = Debug|x64 + {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Debug|x64.Build.0 = Debug|x64 {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Release|Win32.ActiveCfg = Release|Win32 {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Release|Win32.Build.0 = Release|Win32 + {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Release|x64.ActiveCfg = Release|x64 + {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD}.Release|x64.Build.0 = Release|x64 {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Debug|Win32.ActiveCfg = Debug|Win32 {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Debug|Win32.Build.0 = Debug|Win32 + {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Debug|x64.ActiveCfg = Debug|x64 + {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Debug|x64.Build.0 = Debug|x64 {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Release|Win32.ActiveCfg = Release|Win32 {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Release|Win32.Build.0 = Release|Win32 + {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Release|x64.ActiveCfg = Release|x64 + {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE From 124e601d2f49338128f4348fd791d1efc32d6305 Mon Sep 17 00:00:00 2001 From: Linquize Date: Sat, 19 Jul 2014 20:21:02 +0800 Subject: [PATCH 4/6] Add VS related ignore files to .gitignore --- .gitignore | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitignore b/.gitignore index d63ff7e..2634447 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,10 @@ msg_gen srv_gen doc/html *sublime-workspace +*.user +*.suo +*.sdf +*.opensdf +ipch +Debug +Release From 54d7a9474a068df755a590ed86c29ae590b414d8 Mon Sep 17 00:00:00 2001 From: Linquize Date: Sat, 26 Jul 2014 21:59:53 +0800 Subject: [PATCH 5/6] Fix warning in Win64 --- src/impl/win.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/impl/win.cc b/src/impl/win.cc index d933fe9..c25bf4f 100644 --- a/src/impl/win.cc +++ b/src/impl/win.cc @@ -317,7 +317,7 @@ Serial::SerialImpl::read (uint8_t *buf, size_t size) throw PortNotOpenedException ("Serial::read"); } DWORD bytes_read; - if (!ReadFile(fd_, buf, size, &bytes_read, NULL)) { + if (!ReadFile(fd_, buf, static_cast(size), &bytes_read, NULL)) { stringstream ss; ss << "Error while reading from the serial port: " << GetLastError(); THROW (IOException, ss.str().c_str()); @@ -332,7 +332,7 @@ Serial::SerialImpl::write (const uint8_t *data, size_t length) throw PortNotOpenedException ("Serial::write"); } DWORD bytes_written; - if (!WriteFile(fd_, data, length, &bytes_written, NULL)) { + if (!WriteFile(fd_, data, static_cast(length), &bytes_written, NULL)) { stringstream ss; ss << "Error while writing to the serial port: " << GetLastError(); THROW (IOException, ss.str().c_str()); From b55e9f797f838b5675a85a7cbb8c68a6044b657e Mon Sep 17 00:00:00 2001 From: Linquize Date: Sat, 26 Jul 2014 22:00:10 +0800 Subject: [PATCH 6/6] Can use the toolsets from Visual Studio 2010, 2012, 2013 The default is v100 (VS2010) --- visual_studio/serial/serial.vcxproj | 4 ++++ visual_studio/test_serial/test_serial.vcxproj | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/visual_studio/serial/serial.vcxproj b/visual_studio/serial/serial.vcxproj index a78cbed..3bef985 100644 --- a/visual_studio/serial/serial.vcxproj +++ b/visual_studio/serial/serial.vcxproj @@ -22,6 +22,10 @@ {A8517FB2-C74E-43BD-B3C6-B05D3FC11ECD} serial + + v120_xp + v110_xp + StaticLibrary diff --git a/visual_studio/test_serial/test_serial.vcxproj b/visual_studio/test_serial/test_serial.vcxproj index 83c9f66..293fbce 100644 --- a/visual_studio/test_serial/test_serial.vcxproj +++ b/visual_studio/test_serial/test_serial.vcxproj @@ -22,6 +22,10 @@ {92EE7E58-C737-41F9-B795-9B6ACF6AB0B8} test_serial + + v120_xp + v110_xp + Application