Skip to content

Commit

Permalink
Release 1.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
vdm-dev committed Mar 24, 2022
1 parent de33808 commit e70bb0c
Show file tree
Hide file tree
Showing 22 changed files with 10,432 additions and 101 deletions.
10 changes: 5 additions & 5 deletions C3Bridge.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,21 @@
<ProjectGuid>{3EC3980F-E052-4E81-A188-7B3A152AC770}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>C3Bridge</RootNamespace>
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
Expand Down Expand Up @@ -62,7 +62,6 @@
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(SolutionDir)source;$(SolutionDir)include;$(SolutionDir)dependencies\win32xx</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
Expand All @@ -81,7 +80,6 @@
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(SolutionDir)source;$(SolutionDir)include;$(SolutionDir)dependencies\win32xx</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
</ClCompile>
Expand Down Expand Up @@ -123,6 +121,7 @@
<ClCompile Include="source\messagebuilder.cpp" />
<ClCompile Include="source\messagereader.cpp" />
<ClCompile Include="source\proxy.cpp" />
<ClCompile Include="source\safe.cpp" />
<ClCompile Include="source\settings.cpp" />
<ClCompile Include="source\stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
Expand All @@ -148,6 +147,7 @@
<ClInclude Include="source\messagereader.h" />
<ClInclude Include="source\proxy.h" />
<ClInclude Include="source\resource.h" />
<ClInclude Include="source\safe.h" />
<ClInclude Include="source\settings.h" />
<ClInclude Include="source\stdafx.h" />
<ClInclude Include="source\targetver.h" />
Expand Down
6 changes: 6 additions & 0 deletions C3Bridge.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,9 @@
<ClCompile Include="source\settings.cpp">
<Filter>Source Files\Application</Filter>
</ClCompile>
<ClCompile Include="source\safe.cpp">
<Filter>Source Files\System</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="source\resource.h">
Expand Down Expand Up @@ -185,6 +188,9 @@
<ClInclude Include="source\settings.h">
<Filter>Source Files\Application</Filter>
</ClInclude>
<ClInclude Include="source\safe.h">
<Filter>Source Files\System</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Manifest Include="resources\main.manifest">
Expand Down
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,26 @@
# Changelog

## [1.4.0] (Open Source) - 2022-03-24
Bug Fix Release
### Added
- C3 Bridge Interface Protocol version 1.4
### Changed
- The old version of CMake (3.4) is now supported for building the project in Visual Studio .NET 2003
- The program versions are now divided:
* Primary (compiled with Visual Studio 2022), required Windows 7 and higher
* Compatible (compiled with Visual Studio .NET 2003), required Windows XP and higher
* ANSI (compiled with Visual Studio .NET 2003), required Windows 95 and higher
### Fixed
- CommandFileWriteContent: integer overflow eliminated
- CommandFileReadContent: integer overflow eliminated

## [1.3.0] (Open Source) - 2021-06-06
Bug Fix Release
### Fixed
- CommandWriteMultiple now works correctly
### Known issues
- CommandFileWriteContent may not work correctly due to integer overflow
- CommandFileReadContent may not work correctly due to integer overflow

## [1.2.0] (Open Source) - 2021-06-05
### Added
Expand Down
35 changes: 27 additions & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,29 +1,46 @@
cmake_minimum_required (VERSION 3.15)
cmake_minimum_required (VERSION 3.4)

set (PROJECT C3Bridge)
set (ANSI OFF CACHE BOOL "Make ANSI version")
set (CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "" FORCE)

project (${PROJECT})
project (C3Bridge)

if (MSVC)
set_property (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT})
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO")

if (MSVC_VERSION LESS 1600)
message (STATUS "Using compatibility <stdint.h> header for Visual Studio 2008 and earlier")
include_directories(${CMAKE_SOURCE_DIR}/dependencies/compatibility)
add_definitions (-DRC_LEGACY)
project (C3BCOMPT)
endif ()

set(CompilerFlags
CMAKE_CXX_FLAGS
CMAKE_CXX_FLAGS_DEBUG
CMAKE_CXX_FLAGS_RELEASE
CMAKE_C_FLAGS
CMAKE_C_FLAGS_DEBUG
CMAKE_C_FLAGS_RELEASE
)
foreach(CompilerFlag ${CompilerFlags})
string(REPLACE "/MD" "/MT" ${CompilerFlag} "${${CompilerFlag}}")
endforeach()
endif ()

if (ANSI)
message (STATUS "Making ANSI version of the application")
remove_definitions (-D_UNICODE)
remove_definitions (-D_UNICODE -DUNICODE)
add_definitions (-D_MBCS)
project (C3BANSI)
else ()
message (STATUS "Making UNICODE version of the application")
remove_definitions (-D_MBCS)
add_definitions (-D_UNICODE)
add_definitions (-D_UNICODE -DUNICODE)
endif ()

if (MSVC)
set_property (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT_NAME})
endif ()

include_directories (${CMAKE_SOURCE_DIR}/dependencies/win32xx)
Expand Down Expand Up @@ -84,6 +101,8 @@ set (SOURCES_PROXY
set (SOURCES_SYSTEM
source/main.cpp
source/resource.h
source/safe.cpp
source/safe.h
source/stdafx.cpp
source/stdafx.h
source/targetver.h
Expand Down Expand Up @@ -120,5 +139,5 @@ set (SOURCES
${SOURCES_SYSTEM}
)

add_executable (${PROJECT} WIN32 ${SOURCES} ${RESOURCES})
target_link_libraries (${PROJECT} "comctl32.lib ws2_32.lib")
add_executable (${PROJECT_NAME} WIN32 ${SOURCES} ${RESOURCES})
target_link_libraries (${PROJECT_NAME} "comctl32.lib" "ws2_32.lib")
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2020-2021 Dmitry Lavygin <[email protected]>
Copyright (c) 2020-2022 Dmitry Lavygin <[email protected]>
S.P. Kapitsa Research Institute of Technology of Ulyanovsk State University.
All rights reserved.

Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
The C3 Bridge Interface Server is a lightweight network application that allows remote clients to execute requests to the KUKA Cross 3 subsystem and return responses. The application provides advanced functionality and high performance.

## Features
* Well-documented [application protocol](https://github.com/ulsu-tech/c3bridge-server/raw/master/documents/C3%20Bridge%20Interface%20Protocol%201.3.pdf). It is fully compatible with KukavarProxy protocol, which means that existing client solutions (RoboDK, ROS) can be used.
* Well-documented [application protocol](http://c3.ulsu.tech/protocol/latest/). It is fully compatible with KukavarProxy protocol, which means that existing client solutions (RoboDK, ROS) can be used.
* Executes more functions of the KUKA Cross 3 subsystem (in the future we hope to implement all available functions).
* Controls the execution of a KRL program.
* High performance. The software is written in C++ and can be compiled using both modern development tools and development tools of the past years (like Visual C++ 6.0).
Expand All @@ -15,8 +15,11 @@ The C3 Bridge Interface Server is a lightweight network application that allows
## Changelog
See the [document](CHANGELOG.md) for more information.

## Website
[HTTP://C3.ULSU.TECH/](http://c3.ulsu.tech/)

## License
Copyright (c) 2020-2021 Dmitry Lavygin ([email protected])
Copyright (c) 2020-2022 Dmitry Lavygin ([email protected])

S.P. Kapitsa Research Institute of Technology of Ulyanovsk State University.

Expand Down
4 changes: 4 additions & 0 deletions dependencies/compatibility/cstdint
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,14 @@

#ifdef _STD_USING
#undef _STD_USING
#define __STDC_LIMIT_MACROS
#define __STDC_CONSTANT_MACROS
#include <stdint.h>
#define _STD_USING

#else /* _STD_USING */
#define __STDC_LIMIT_MACROS
#define __STDC_CONSTANT_MACROS
#include <stdint.h>
#endif /* _STD_USING */

Expand Down
Loading

0 comments on commit e70bb0c

Please sign in to comment.