Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split controller into planning #1

Open
wants to merge 425 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
425 commits
Select commit Hold shift + click to select a range
3b23869
add logs for failures of parsing taskstate
May 25, 2018
cf88a6e
add crop margins
Jun 7, 2018
a413b5c
fix key name
Jun 7, 2018
d79df5f
Merge branch 'master' of https://github.com/mujin/controllerclientcpp…
liuhuanjim013 Jun 8, 2018
8d0f0db
Merge branch 'jdshanghai' of https://github.com/mujin/controllerclien…
liuhuanjim013 Jun 8, 2018
54e9795
Add comparators needed by visionmanager
Jun 26, 2018
c5b23aa
Merge pull request #28 from mujin/comparators
rdiankov Jun 26, 2018
d033b24
Merge remote-tracking branch 'origin/master' into fixjson_update_fortest
Jun 27, 2018
cc1ab70
Merge branch 'fixjson_update_fortest' into fixWindows
Jun 27, 2018
165a2e2
fix decltype
Jun 29, 2018
051c684
Merge branch 'master' into HEAD
Jun 29, 2018
f7fe017
Merge branch 'fixjson' into fixjson_update_fortest
Jun 29, 2018
ac17f65
Merge branch 'fixjson_update_fortest' into fixWindows
Jun 29, 2018
d314211
resize rotationmat before filling it
Jun 30, 2018
c94fde5
Merge remote-tracking branch 'origin/master' into fixjson_update_fortest
Jul 9, 2018
e823b0d
Merge branch 'fixjson_update_fortest' into fixWindows
Jul 9, 2018
02a72e5
Added BinPickingTaskResource::Set/GetDOFValues
Jul 20, 2018
2a57350
Updated SetInstantaneousJointValues
Jul 23, 2018
f811518
Add MVR related functions
Aug 14, 2018
2b4a71b
Update MVR info and code to handle std::array
Aug 16, 2018
1d715de
SendMVRRegistrationResult func
Aug 16, 2018
62ca1e4
SendMVRRegistrationResult takes rapidjson::Document - WIP
Aug 17, 2018
7238c00
Add liftedWorldOffset to RegisterMinViableRegionInfo + comments
Aug 21, 2018
8c2aa95
Set the default values of registerMinViableRegionInfo
Aug 22, 2018
d37aac6
Adding robotDepartStopTimestamp to registerMinViableRegionInfo
Aug 23, 2018
84ad73e
Send mvrResultInfo
Aug 24, 2018
e28cbf0
change command name
liuhuanjim013 Aug 26, 2018
825ee17
fix GetJsonValueByPath
Aug 29, 2018
7b1dc75
minor name and struct change
liuhuanjim013 Aug 30, 2018
d96f44a
fix compilation
liuhuanjim013 Aug 31, 2018
0509a24
add cropcontainer margins to updateenv call
akovski Sep 21, 2018
a6ef901
Merge remote-tracking branch 'origin/master' into fixWindows
Oct 26, 2018
af059c9
Merge branch 'fixWindows' into fixWindows_FileUpload
Oct 26, 2018
94c14af
Merge remote-tracking branch 'origin/master' into autoregistration
yoshikikanemoto Nov 14, 2018
e9d90fb
Added ComputeIkParamPosition API
Nov 22, 2018
c8141d2
mujincreateikparam can set solutionindices
Nov 22, 2018
aec6eb2
add cycleIndex
Dec 20, 2018
cc47bf8
add timestamps in binpickingstate
akovski Dec 25, 2018
a3614fc
fix var name
akovski Dec 26, 2018
bcd2d72
fix var name in json
akovski Dec 27, 2018
d282cea
Merge remote-tracking branch 'origin/master' into autoregistration
yoshikikanemoto Dec 28, 2018
d30e3e3
add TSM for MVR registration
yoshikikanemoto Jan 9, 2019
cbeffa1
add forceRequestDestPointCloud
akovski Jan 14, 2019
87ee4c3
Add instobjectname/ikparamname overload for MoveToHandPosition / Move…
Jan 15, 2019
7280b32
goaltype must be set to null explicitly in MoveToHandPosition
Jan 15, 2019
9b653e5
Merge branch 'master' into autoregistration
Jan 15, 2019
4a89c11
add visible dist
Jan 18, 2019
1336e05
add occlusionFreeCornerMask
Jan 18, 2019
06251c2
Merge pull request #43 from mujin/addVisibleDist
rdiankov Jan 18, 2019
498ccb4
add minCandidateSize/maxCandidateSize
Jan 22, 2019
8150ac8
Merge pull request #36 from mujin/cropcontainer
rdiankov Jan 28, 2019
d7d3d35
Merge remote-tracking branch 'origin/master' into TyExperimentRapid
Feb 1, 2019
6c055e3
Add BinPickingTaskResource::GetGrabbed
Feb 4, 2019
dde8ab9
Merge branch 'fixWindows_FileUpload' into TyExperimentRapid
Feb 4, 2019
41b1b6f
fix minor signature
Feb 4, 2019
6db4539
Merge branch 'fixWindows_FileUpload' into TyExperimentRapid
Feb 4, 2019
2d292b8
use timestamp to track force requests
Feb 20, 2019
b0bd968
Merge remote-tracking branch 'origin/master' into TyExperimentRapid
Apr 1, 2019
b448846
slavestate might not have taskstate
Apr 13, 2019
f4e9ee4
slavestate might not have taskstate
Apr 13, 2019
c984d22
slavestate might not have taskstate
Apr 13, 2019
e18d484
Merge branch 'fixWindows_FileUpload' into TyExperimentRapid
Apr 13, 2019
18800b9
add parsing of mrGeometryInfos
Apr 17, 2019
464e09c
Merge branch 'master' of ssh://github.com/mujin/controllerclientcpp
Apr 17, 2019
996cfa3
use boost::shared_ptr to manage rapidjson::Document
Apr 17, 2019
19037ab
check for empty extra
Apr 23, 2019
ce47ddd
add reading quaterion from client
May 1, 2019
fd6d94b
add parsing occlusionResults, fix compatibility check
May 20, 2019
2688e74
add stamp and callerid
Jun 7, 2019
39a860d
add comments
Jun 25, 2019
ca697dd
Merge branch 'master' into TyExperimentRapid
Jun 25, 2019
ebed414
add new GetRobotBridgeIOVariableString
Jul 5, 2019
59e3120
add GetInstObjectInfoFromURI
Jul 5, 2019
1b86519
fix json error
Jul 5, 2019
2f9c13d
fix GetInstObjectInfoFromURI and GetRobotBridgeIOVariableString
Jul 11, 2019
f34b96b
add interface to remove object from object set (object list) in visio…
yoshikikanemoto Jul 25, 2019
a29a798
Merge branch 'master' into objectremove
Jul 25, 2019
8c048c0
Merge pull request #51 from mujin/objectremove
rdiankov Jul 25, 2019
e12b38f
eliminated initializer-list
Aug 2, 2019
6fd15e0
make sure to initialize all members of ResultGetBinpickingState
Aug 5, 2019
e062cff
Improved ResultGetBinpickingState initialization
Aug 19, 2019
e24c998
Merge pull request #52 from mujin/fixWindows
rdiankov Aug 22, 2019
02b1fff
add needSourceContainer param
Sep 9, 2019
5bac01d
use tristate for needSourceContainer
Sep 9, 2019
af8bc7f
fix precision for timestamp
Sep 27, 2019
9e71818
add more precision setting
Sep 27, 2019
2015d86
add addPointOffsetInfo
Sep 29, 2019
a5f6a0f
add TriggerDetectionCaptureInfo
Oct 15, 2019
4e24051
fix serialization precision
Oct 31, 2019
bcd2fc5
add waitForTriggerOnCapturing to RegisterMinViableRegionInfo
yoshikikanemoto Feb 21, 2020
5ce87b4
add json parsing
yoshikikanemoto Feb 21, 2020
16efc6a
added regionname in triggerDetectionCaptureInfo
Puttichai Feb 25, 2020
24c2ba4
fixed wrong sized integer
yoshikikanemoto Feb 25, 2020
07cebc2
Merge branch 'master' of https://github.com/mujin/controllerclientcpp…
yoshikikanemoto Feb 28, 2020
14313cb
add sending timestamp of the pointcloud if defined
Mar 31, 2020
116a251
add new PickPlaceHistoryItem that will be published the planning slave
May 26, 2020
e0bb02e
add one more pickPlaceType
May 26, 2020
0153183
add comments for PickPlaceHistoryItem
May 27, 2020
d6d04f9
add targetupdatename to TriggerDetectionCaptureInfo
Jun 25, 2020
7663652
passing isContainerEmpty results via isContainerEmptyMap instead of i…
Puttichai Aug 4, 2020
0c6eb82
isContainerEmpty result should be int
Puttichai Aug 4, 2020
12f4551
have correct isContainerEmptyMap format
Aug 5, 2020
0f0759d
Merge pull request #76 from mujin/use_isContainerEmptyMap
rdiankov Aug 5, 2020
9ede93b
fixed HeartBeat API name typo
Oct 5, 2020
386a929
update GetSlaveRequestIdFromHeatbeat to support _pw or _tw
Oct 5, 2020
bba0008
fix GetScenePkFromHeatbeat regression
Oct 13, 2020
2d5d357
Use tcp keepalive for zmq.
ziyan Oct 28, 2020
aa08ebc
Relax keepalive parameters a bit.
ziyan Oct 29, 2020
de95c0a
Merge pull request #80 from mujin/zmqtcpkeepalive
rdiankov Nov 2, 2020
675155b
clear _mapTaskParameters when initializing
Nov 16, 2020
fdca0cc
add new publish RegionStateInfo
Dec 10, 2020
abf6c20
add isContainerPresent
Dec 14, 2020
be41324
add setting callerid
Dec 21, 2020
eb1f383
change to locationName
Dec 29, 2020
b5e7aee
add locationName to RegisterMVR for tracking multiple locations
Feb 11, 2021
00c7d0d
add max possible size for MVR registration
yoshikikanemoto Feb 16, 2021
948615c
move maxPossibleSize under minViableReion
yoshikikanemoto Feb 16, 2021
cc6884b
Merge branch 'master' of https://github.com/mujin/controllerclientcpp…
Feb 19, 2021
6082d75
add starttimestamp endtimestamp executionverification regardless of t…
Feb 19, 2021
1840075
Merge pull request #69 from mujin/denys_fixsendpctimestamp
rdiankov Feb 19, 2021
841f645
Merge branch 'master' of https://github.com/mujin/controllerclientcpp…
yoshikikanemoto Mar 2, 2021
1db567e
add object weight to registerMinViableRegionInfo
yoshikikanemoto Mar 3, 2021
cb46c3b
add initializers
yoshikikanemoto Mar 3, 2021
f623bb9
Merge pull request #86 from mujin/maxPossibleSize
rdiankov Mar 11, 2021
531aed0
allow executing commands directly from rapidjson::Value objects
Mar 11, 2021
af836c0
change to mujin scenetype
Mar 14, 2021
a608441
Add rIkParamPoses in ResultInstObjectInfo
Mar 15, 2021
1ea0f2a
Rename rIkParamPoses to rIkParams
Mar 15, 2021
f0da19e
Add rIkParams parsing
Mar 15, 2021
855b2f0
Fix local variables shadowing member variables
Mar 16, 2021
d1012b5
Improve doc
Mar 16, 2021
83ef6f0
Merge branch 'master' into get-container-ikparams-in-vm
Mar 17, 2021
1d33304
convert ikparams to array
Mar 17, 2021
9038079
Merge pull request #87 from mujin/get-container-ikparams-in-vm
rdiankov Mar 17, 2021
279bc57
add some logs for publishing
May 4, 2021
63000dc
Added registerMinViableRegionInfo.isTopFaceWeak
May 7, 2021
87b4af7
Add forgotten update in header for isTopFaceWeak flag
May 10, 2021
ae7315d
Merge branch 'master' of https://github.com/mujin/controllerclientcpp…
yoshikikanemoto May 25, 2021
5f4b575
Avoid using Value::CopyFrom as it causes memory leakage issues
Jun 3, 2021
206e076
remove locationIOName
Jul 27, 2021
37089aa
Merge branch 'master' of github.com:/mujin/controllerclientcpp into i…
Oct 6, 2021
3470d0f
parse activeLocationTrackingInfos instead
Dec 1, 2021
03efcb2
added robot configuration to RegisterMinViableRegionInfo
yoshikikanemoto Dec 23, 2021
5483f7c
Merge pull request #94 from mujin/storeRobotStateInAutoRegistrationDa…
rdiankov Dec 24, 2021
f18a484
Silence warnings related to deprecated zmq C++ API due to the upgrade…
Jan 7, 2022
6705a56
Reduce amount of stringstream misuse
Jan 7, 2022
4c59e4b
Merge remote-tracking branch 'origin/master' into fixHeartBeatAPIName
Jan 10, 2022
4212371
Merge branch 'master' into updateGetSlaveRequestIdFromHeatbeat
Jan 11, 2022
7289e1e
support new locationExecutionInfos from planning
Jan 14, 2022
b9eb670
Merge branch 'master' of https://github.com/mujin/controllerclientcpp…
Feb 21, 2022
6ca732a
Replaces isTopFaceWeak with graspModelInfo
Feb 21, 2022
be62723
added minCornerVisibleInsideDist to registerMinViableRegionInfo
yoshikikanemoto Mar 4, 2022
8324d42
Corrects JSON path of graspModelInfo
Mar 4, 2022
873b33d
Merge pull request #99 from mujin/graspModelInfo
rdiankov Mar 7, 2022
55a62c7
Merge branch 'master' of github.com:mujin/controllerclientcpp into mi…
yoshikikanemoto Mar 7, 2022
32e9d51
Merge pull request #97 from mujin/silence_zmq_bullseye
rdiankov Mar 7, 2022
8a74b28
Revert "Silence ZMQ related warnings"
ziyan Mar 7, 2022
1a006ba
Merge pull request #101 from mujin/revert-97-silence_zmq_bullseye
rdiankov Mar 7, 2022
7b818ed
fix shadowed variables, take 1
Mar 24, 2022
370551c
fix: gather attachedsensors from connectedBodies in RobotResource::Ge…
Apr 7, 2022
109d722
refactor: trim some redundant code from RobotResource::GetAttachedSen…
Apr 11, 2022
dc5818f
Fix memory leak from GraspModelInfo
Apr 14, 2022
661d874
Fix indent
Apr 14, 2022
0e8d48d
Merge pull request #104 from mujin/fix-graspModelInfo-memory
rdiankov Apr 19, 2022
a13a9bc
Merge pull request #102 from lazydroid/dev/lenik/fix_shadowed_variables
rdiankov Apr 19, 2022
c378336
Merge branch 'master' into get-attached-sensors-from-connected-body
Apr 26, 2022
6a73728
Merge pull request #103 from mujin/get-attached-sensors-from-connecte…
rdiankov Apr 26, 2022
bdf0320
Merge pull request #89 from mujin/hamdi_leakage
rdiankov Apr 26, 2022
13c4ead
Merge branch 'master' into clearMapTaskParameters
Apr 26, 2022
f67ef96
Merge pull request #81 from mujin/clearMapTaskParameters
rdiankov Apr 26, 2022
3c4d58e
Merge pull request #82 from mujin/updateGetSlaveRequestIdFromHeatbeat
rdiankov May 1, 2022
c9fa806
use transferSpeedPostMult
Jul 18, 2022
76afd2e
update to transferSpeedPostMult
Jul 18, 2022
9561b43
added maxPossibleSizePadding in registerMinViableRegion
yoshikikanemoto Oct 21, 2022
4223289
consistent initial value
yoshikikanemoto Oct 24, 2022
735df2d
Merge pull request #116 from mujin/maxPossibleSizePadding
yoshikikanemoto Oct 24, 2022
58d936a
use sensorName/sensorLinkName for occlusion checking result
yoshikikanemoto Nov 18, 2022
a885dd9
added SensorSelectionInfo for GetInstObjectAndSensorInfo
yoshikikanemoto Nov 18, 2022
bb34cb7
moved SensorSelectionInfo to mujincontrollerclient.h, changed GetSens…
yoshikikanemoto Nov 21, 2022
21df6b1
GetInstObjectAndSensorInfo receives output['sensors'][sensorName][sen…
yoshikikanemoto Nov 21, 2022
7a053e3
update mujinjson.h to make it compatible with internal coe, add a com…
Jan 5, 2023
3b9fdfb
update mujinjson.h to make it compatible with internal coe, add a com…
Jan 5, 2023
23aa301
add localaabb to PickPlaceHistoryItem
yoshikikanemoto Mar 1, 2023
74f0c3d
add localaabb to PickPlaceHistoryItem
yoshikikanemoto Mar 1, 2023
afd09e0
fix typo
yoshikikanemoto Mar 1, 2023
bf8d3f9
fix typo
yoshikikanemoto Mar 2, 2023
3711df5
fix default
Mar 27, 2023
f1ab229
Merge pull request #121 from mujin/devanning2023_pullmaster
rdiankov Mar 27, 2023
bf54c24
Merge pull request #121 from mujin/devanning2023_pullmaster
rdiankov Mar 27, 2023
4ea082d
added maxPossibleSizeOriginal and cornerMaskOriginal to deal with lef…
yoshikikanemoto Apr 2, 2023
b1355bc
initialize maxPossibleSizeOriginal
yoshikikanemoto Apr 3, 2023
a2f1db4
Merge pull request #127 from mujin/maxPossibleSizeOriginal20230403
yoshikikanemoto Apr 4, 2023
8c20897
support remove request for multiple objects
eisoku9618 Apr 14, 2023
375e292
forget to clear
eisoku9618 Apr 14, 2023
04184bc
fix typo
eisoku9618 Apr 14, 2023
42b44c6
renamed key
yoshikikanemoto Apr 18, 2023
1b7c96e
more rename
eisoku9618 Apr 18, 2023
bc8dab9
Merge pull request #129 from mujin/delete-registration-data-on-graspi…
yoshikikanemoto Apr 25, 2023
9305269
Return uri in GetInstObjectAndSensorInfo().
ziyan May 6, 2023
1b0079f
Merge pull request #132 from mujin/containerUri20230506
rdiankov May 6, 2023
b84d4f9
send skipAppendingToObjectSet instead of waitForTriggerOnCapturing in…
yoshikikanemoto May 10, 2023
8bafaf0
migrate to sensorTimeStampMS
yoshikikanemoto May 10, 2023
9e5c056
more sensorTimeStampMS
yoshikikanemoto May 10, 2023
eb2c2fb
fixed mismatching deserialization of occlusionResults/sensorSelection…
yoshikikanemoto May 12, 2023
8f85123
Merge pull request #135 from mujin/fixSensorSelectionInfoDeserialize2…
yoshikikanemoto May 12, 2023
490dd7d
added maxCornerAngleDeviation and registrationMode to RegisterMinViab…
yoshikikanemoto May 24, 2023
349921e
changed order of numbers to reduce struct size
yoshikikanemoto May 24, 2023
e8afc5c
Merge pull request #136 from mujin/perpendicular_dragging_20230523
rdiankov Jun 6, 2023
f07e554
add execution verification mode
Jun 16, 2023
c00e361
forgot MUJINCLIENT_API
Jun 18, 2023
b679985
better support for RegisterMinViableRegionInfo, including scaling
Jun 22, 2023
08237e1
better support for RegisterMinViableRegionInfo, including scaling
Jun 22, 2023
ac4c522
use targetUpdateNamePrefix
Jul 1, 2023
9ced84b
take into account loading from null object
Jul 3, 2023
0c5506b
add objectType
Jul 5, 2023
073a66f
add check for null pointer
Jul 12, 2023
bd88daf
output as quaternion/translation
Jul 12, 2023
9f34943
Begin splitting out the planning portion of the controller client
Jul 21, 2023
62fb118
Implementation of minimal interface
Jul 21, 2023
15a65e7
Build the planning client (under the moniker "BinPickingTaskResource").
Jul 24, 2023
00abf05
Rename the class to MujinPlanningClient and remove some unused functions
Jul 25, 2023
61cb345
Remove unused references to scene and task PKs.
Jul 25, 2023
2a7841e
Remove the unused UserInterruptException
Jul 25, 2023
ecee940
Fix CMake, make this build
Jul 25, 2023
b5c2a5b
Allow the vision manager to build with this planning client.
Jul 27, 2023
f470950
Cleanup: SearchAndReplace is in namespace mujinplanningclient
Jul 27, 2023
9903252
add containerName
Jul 30, 2023
2d2c106
add containerName
Jul 30, 2023
7239165
Log what error occured when failing to send the zmq message a second …
Aug 1, 2023
7eebfde
Divide ZMQ command and hearbeat sockets.
Aug 1, 2023
f3c77ab
Fix callsites of _CreateZMQSocket
Aug 1, 2023
151385d
Fake an 'output' key in the heartbeat JSON parsing
Aug 2, 2023
debfb61
Fix typos
Aug 2, 2023
5a4099a
Set object type on fakeResult
Aug 2, 2023
3473b67
Use a request socket instead of a publisher socket in _CallZmq.
Aug 2, 2023
30c1a0f
fix graspModelInfo key
Aug 3, 2023
364a27e
Recover GetCStringJsonValueByKey
Aug 4, 2023
e74518e
Match planning client's folder stucture
Aug 7, 2023
082626f
Update mujinjson with new functions
Aug 7, 2023
4267258
Merge remote-tracking branch 'merge-new-mujin-defintions/master' into…
Aug 7, 2023
53bcf50
Pickup code and refactors in controller client.
Aug 7, 2023
0c3b844
Match planning client's structure
Aug 8, 2023
ad4901b
Merge remote-tracking branch 'merge-new-mujin-defintions/master' into…
Aug 8, 2023
ca333fb
Move the new functionality from the only binpickingtask into planning…
Aug 8, 2023
9762256
Add the containerName in PickPlaceHistoryItem
Aug 8, 2023
03dedf4
Parse the unitInfo in ResultGetBinPickingState
Aug 15, 2023
d50d2f0
Merge in new functionality to parse JSON without clearing the
Aug 22, 2023
4b448ae
Match planning client's structure
Aug 22, 2023
f5ef2e2
Merge changes from https://git.mujin.co.jp/dev/controllerclientcpp/-/…
Aug 22, 2023
8085fd9
Fix build: can't copy graspModelInfo
Aug 22, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
101 changes: 54 additions & 47 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,21 @@
# See the License for the specific language governing permissions and
# limitations under the License.
cmake_minimum_required (VERSION 2.8.0)
project(mujincontrollerclient)
project(mujinplanningclient)
set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE )

# Define here the needed parameters
# make sure to change the version in docs/Makefile
set (MUJINCLIENT_VERSION_MAJOR 0)
set (MUJINCLIENT_VERSION_MINOR 65)
set (MUJINCLIENT_VERSION_PATCH 1)
set (MUJINCLIENT_VERSION ${MUJINCLIENT_VERSION_MAJOR}.${MUJINCLIENT_VERSION_MINOR}.${MUJINCLIENT_VERSION_PATCH})
set (MUJINCLIENT_SOVERSION ${MUJINCLIENT_VERSION_MAJOR}.${MUJINCLIENT_VERSION_MINOR})
set (CLIENT_SOVERSION ${MUJINCLIENT_VERSION_MAJOR}.${MUJINCLIENT_VERSION_MINOR})
message(STATUS "Compiling MUJIN Controller Client C++ Version ${MUJINCLIENT_VERSION}, soversion=${CLIENT_SOVERSION}")
set (MUJINPLANNINGCLIENT_VERSION_MAJOR 0)
set (MUJINPLANNINGCLIENT_VERSION_MINOR 65)
set (MUJINPLANNINGCLIENT_VERSION_PATCH 0)
set (MUJINPLANNINGCLIENT_VERSION ${MUJINPLANNINGCLIENT_VERSION_MAJOR}.${MUJINPLANNINGCLIENT_VERSION_MINOR}.${MUJINPLANNINGCLIENT_VERSION_PATCH})
set (MUJINPLANNINGCLIENT_SOVERSION ${MUJINPLANNINGCLIENT_VERSION_MAJOR}.${MUJINPLANNINGCLIENT_VERSION_MINOR})
set (CLIENT_SOVERSION ${MUJINPLANNINGCLIENT_VERSION_MAJOR}.${MUJINPLANNINGCLIENT_VERSION_MINOR})
message(STATUS "Compiling MUJIN Planning Client C++ Version ${MUJINPLANNINGCLIENT_VERSION}, soversion=${CLIENT_SOVERSION}")

set(MUJINCLIENT_CMAKE_INSTALL_DIR "mujincontrollerclient-${MUJINCLIENT_VERSION_MAJOR}.${MUJINCLIENT_VERSION_MINOR}" CACHE STRING "Directory to install the cmake config files.")
set(MUJINCLIENT_TARGET_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR} CACHE STRING "The target processor architecture to build for, this is combined with the generator toolchain")
set(MUJINPLANNINGCLIENT_CMAKE_INSTALL_DIR "mujinplanningclient-${MUJINPLANNINGCLIENT_VERSION_MAJOR}.${MUJINPLANNINGCLIENT_VERSION_MINOR}" CACHE STRING "Directory to install the cmake config files.")
set(MUJINPLANNINGCLIENT_TARGET_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR} CACHE STRING "The target processor architecture to build for, this is combined with the generator toolchain")

message(STATUS "Using cmake version ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" )
# http://www.cmake.org/cmake/help/cmake-2.6.html#policy:CMP0002
Expand Down Expand Up @@ -63,12 +63,18 @@ include(CheckCXXSourceCompiles)
include(CheckCXXSourceRuns)
include(CheckCXXCompilerFlag)

include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/src/include
${CMAKE_CURRENT_BINARY_DIR}/include
) # have to do this before every other include!


add_definitions("-DBOOST_SPIRIT_THREADSAFE") # for json parsing

# have to include before boost since the boost headers can be located in a previous installed version of this library
set(MUJINCLIENT_INCLUDE_LOCAL_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/include)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/include)
include_directories(${MUJINCLIENT_INCLUDE_LOCAL_DIRS})
set(MUJINPLANNINGCLIENT_INCLUDE_LOCAL_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/src/include)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/src/include)
include_directories(${MUJINPLANNINGCLIENT_INCLUDE_LOCAL_DIRS})

if( MSVC )
add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE)
Expand Down Expand Up @@ -102,7 +108,7 @@ if( MSVC )

check_include_file(stdint.h HAVE_STDINT_H)
if( NOT HAVE_STDINT_H )
#install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/msvc_include/stdint.h DESTINATION include/mujinclient-${MUJINCLIENT_VERSION_MAJOR}.${MUJINCLIENT_VERSION_MINOR} COMPONENT ${COMPONENT_PREFIX}dev)
#install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/msvc_include/stdint.h DESTINATION include/mujinplanningclient-${MUJINPLANNINGCLIENT_VERSION_MAJOR}.${MUJINPLANNINGCLIENT_VERSION_MINOR} COMPONENT ${COMPONENT_PREFIX}dev)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/msvc_include)
endif()

Expand All @@ -120,38 +126,38 @@ if( MSVC )
set(MSVC_PREFIX "vc100")
set(MSVC_PREFIX2 "v100")
endif()
set(MUJINCLIENT_LIBRARY_SUFFIX "${MUJINCLIENT_SOVERSION}-${MSVC_PREFIX}-mt" CACHE STRING "Suffix to append to library names")
set(MUJINPLANNINGCLIENT_LIBRARY_SUFFIX "${MUJINPLANNINGCLIENT_SOVERSION}-${MSVC_PREFIX}-mt" CACHE STRING "Suffix to append to library names")

# install all DLLs
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/bin/" DESTINATION bin FILES_MATCHING PATTERN "*.dll")
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/bin/" DESTINATION bin FILES_MATCHING PATTERN "*.dll")

# force multi-threaded DLL boost
set(Boost_USE_MULTITHREAD ON)
set(Boost_USE_STATIC_LIBS OFF)
set(Boost_USE_STATIC_RUNTIME OFF)
set(Boost_CFLAGS "-DBOOST_ALL_DYN_LINK -DBOOST_ALL_NO_LIB")
else()
set(MUJINCLIENT_LIBRARY_SUFFIX "${MUJINCLIENT_SOVERSION}" CACHE STRING "Suffix to append to library names")
set(MUJINPLANNINGCLIENT_LIBRARY_SUFFIX "${MUJINPLANNINGCLIENT_SOVERSION}" CACHE STRING "Suffix to append to library names")
endif()

set(MUJINCLIENT_LINK_DIRS)
set(MUJINPLANNINGCLIENT_LINK_DIRS)

find_package(PkgConfig)
set(MUJINCLIENT_LOG4CXX 0)
set(MUJINPLANNINGCLIENT_LOG4CXX 0)
if (OPT_LOG4CXX)
pkg_check_modules(LOG4CXX liblog4cxx)
if (LOG4CXX_FOUND)
if( MSVC )
set(MUJINCLIENT_LOG4CXX_INCLUDE_DIRS "/I\"${LOG4CXX_INCLUDEDIR}\"")
set(MUJINCLIENT_LOG4CXX_LIB_DIRS "/LIBPATH:\"${LOG4CXX_LIBDIR}\"")
set(MUJINPLANNINGCLIENT_LOG4CXX_INCLUDE_DIRS "/I\"${LOG4CXX_INCLUDEDIR}\"")
set(MUJINPLANNINGCLIENT_LOG4CXX_LIB_DIRS "/LIBPATH:\"${LOG4CXX_LIBDIR}\"")
else()
set(MUJINCLIENT_LOG4CXX_INCLUDE_DIRS "-I${LOG4CXX_INCLUDEDIR}")
set(MUJINCLIENT_LOG4CXX_LIB_DIRS "-L${LOG4CXX_LIBDIR}")
set(MUJINPLANNINGCLIENT_LOG4CXX_INCLUDE_DIRS "-I${LOG4CXX_INCLUDEDIR}")
set(MUJINPLANNINGCLIENT_LOG4CXX_LIB_DIRS "-L${LOG4CXX_LIBDIR}")
endif()
set(MUJINCLIENT_LOG4CXX_LIBRARY "-l${LOG4CXX_LIBRARIES}")
set(MUJINPLANNINGCLIENT_LOG4CXX_LIBRARY "-l${LOG4CXX_LIBRARIES}")

set(MUJINCLIENT_LINK_DIRS ${MUJINCLIENT_LINK_DIRS} ${LOG4CXX_LIBDIR})
set(MUJINCLIENT_LOG4CXX 1)
set(MUJINPLANNINGCLIENT_LINK_DIRS ${MUJINPLANNINGCLIENT_LINK_DIRS} ${LOG4CXX_LIBDIR})
set(MUJINPLANNINGCLIENT_LOG4CXX 1)
endif()
endif()

Expand Down Expand Up @@ -182,11 +188,11 @@ endif()

if( Boost_FOUND )
include_directories(${Boost_INCLUDE_DIRS})
set(MUJINCLIENT_LINK_DIRS ${MUJINCLIENT_LINK_DIRS} ${Boost_LIBRARY_DIRS})
set(MUJINPLANNINGCLIENT_LINK_DIRS ${MUJINPLANNINGCLIENT_LINK_DIRS} ${Boost_LIBRARY_DIRS})
set(EXTRA_MSVC_DEPEND) # reset extra depend
elseif(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0")
include_directories(${Boost_INCLUDE_DIRS})
set(MUJINCLIENT_LINK_DIRS ${MUJINCLIENT_LINK_DIRS} ${Boost_LIBRARY_DIRS})
set(MUJINPLANNINGCLIENT_LINK_DIRS ${MUJINPLANNINGCLIENT_LINK_DIRS} ${Boost_LIBRARY_DIRS})
set(EXTRA_MSVC_DEPEND msvc_boost) # reset extra depend
elseif( MSVC )
# to facilitate compilation, visual studio libraries are included locally
Expand All @@ -195,7 +201,7 @@ elseif( MSVC )
set(Boost_FOUND 1)
set(Boost_INCLUDE_DIRS "${BOOST_ROOT}")
set(Boost_INCLUDE_DIR "${BOOST_ROOT}")
set(Boost_LIBRARY_DIRS "${BOOST_ROOT}/${MUJINCLIENT_TARGET_PROCESSOR}/lib")
set(Boost_LIBRARY_DIRS "${BOOST_ROOT}/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/lib")
set(Boost_REGEX_FOUND 0)
set(Boost_FILESYSTEM_FOUND 1)
set(Boost_IOSTREAMS_FOUND 1)
Expand Down Expand Up @@ -227,7 +233,7 @@ elseif( MSVC )
install(FILES ${Boost_DATE_TIME_LIBRARY_DLL} ${Boost_THREAD_LIBRARY_DLL} ${Boost_SYSTEM_LIBRARY_DLL} ${Boost_FILESYSTEM_LIBRARY_DLL} ${Boost_PROGRAM_OPTIONS_LIBRARY_DLL} DESTINATION bin COMPONENT ${COMPONENT_PREFIX}dev)
install(DIRECTORY "${Boost_INCLUDE_DIR}/boost" DESTINATION include COMPONENT ${COMPONENT_PREFIX}dev)
include_directories(${Boost_INCLUDE_DIRS})
set(MUJINCLIENT_LINK_DIRS ${MUJINCLIENT_LINK_DIRS} ${Boost_LIBRARY_DIRS})
set(MUJINPLANNINGCLIENT_LINK_DIRS ${MUJINPLANNINGCLIENT_LINK_DIRS} ${Boost_LIBRARY_DIRS})
else()
message(FATAL_ERROR "Could not find boost libraries!")
endif()
Expand Down Expand Up @@ -256,14 +262,14 @@ if( CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )
add_definitions("-fno-strict-aliasing -Wall -Werror=shadow")
endif( CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )

configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/mujincontrollerclient/config.h IMMEDIATE @ONLY)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/mujinplanningclient/config.h IMMEDIATE @ONLY)

find_package(CURL)
if( NOT CURL_FOUND )
if( MSVC )
message(STATUS "setting local curl library from msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}")
set(CURL_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/include")
set(CURL_LIBRARIES "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/lib/libcurl-${MSVC_PREFIX}-mt_imp.lib")
message(STATUS "setting local curl library from msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}")
set(CURL_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/include")
set(CURL_LIBRARIES "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/lib/libcurl-${MSVC_PREFIX}-mt_imp.lib")
else()
message(FATAL_ERROR "could not find CURL library")
endif()
Expand Down Expand Up @@ -297,10 +303,10 @@ else()
endif()
if (NOT libzmq_FOUND)
if( MSVC )
set(libzmq_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/include")
set(libzmq_LIBRARIES "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/lib/libzmq-${MSVC_PREFIX2}-mt-4_0_4.lib")
set(libzmq_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/include")
set(libzmq_LIBRARIES "${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/lib/libzmq-${MSVC_PREFIX2}-mt-4_0_4.lib")
if(EXISTS ${libzmq_LIBRARIES} )
message(STATUS "setting local zmq library from msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}")
message(STATUS "setting local zmq library from msvc_binaries/${MUJINPLANNINGCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}")
set(libzmq_FOUND 1)
else()
message(STATUS "could not find msvc zmq library ${libzmq_LIBRARIES}")
Expand All @@ -311,21 +317,22 @@ endif()

if (libzmq_FOUND)
include_directories(${libzmq_INCLUDE_DIRS})
set(MUJINCLIENT_LINK_DIRS ${MUJINCLIENT_LINK_DIRS} ${libzmq_LIBRARY_DIRS})
set(MUJINPLANNINGCLIENT_LINK_DIRS ${MUJINPLANNINGCLIENT_LINK_DIRS} ${libzmq_LIBRARY_DIRS})
else()
message(WARNING "compiling without libzmq library")
endif()

file(GLOB mujin_header_files ${CMAKE_CURRENT_SOURCE_DIR}/include/mujincontrollerclient/*.h ${CMAKE_CURRENT_SOURCE_DIR}/include/mujincontrollerclient/*.hpp)
install(FILES ${mujin_header_files} ${CMAKE_CURRENT_BINARY_DIR}/include/mujincontrollerclient/config.h DESTINATION include/mujincontrollerclient)
file(GLOB mujin_header_files ${CMAKE_CURRENT_SOURCE_DIR}/src/include/mujinplanningclient/*.h ${CMAKE_CURRENT_SOURCE_DIR}/src/include/mujinplanningclient/*.hpp)
install(FILES ${mujin_header_files} DESTINATION include/mujinplanningclient)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/include/mujinplanningclient/config.h DESTINATION include/mujinplanningclient)

macro(build_sample name)
include_directories(${LOG4CXX_INCLUDEDIR} ${libzmq_INCLUDE_DIRS})
link_directories(${LOG4CXX_LIBDIR})
add_executable(${name} ${name}.cpp)
set_target_properties(${name} PROPERTIES COMPILE_FLAGS "${Boost_CFLAGS}" LINK_FLAGS "")
add_dependencies(${name} libmujincontrollerclient)
target_link_libraries (${name} libmujincontrollerclient ${Boost_THREAD_LIBRARY} ${Boost_DATE_TIME_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY} ${EXTRA_LIBRARIES} ${LOG4CXX_LIBRARIES})
add_dependencies(${name} libmujinplanningclient)
target_link_libraries (${name} libmujinplanningclient ${Boost_THREAD_LIBRARY} ${Boost_DATE_TIME_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY} ${EXTRA_LIBRARIES} ${LOG4CXX_LIBRARIES})
install(TARGETS ${name} DESTINATION bin)
endmacro(build_sample)

Expand All @@ -337,15 +344,15 @@ if( OPT_BUILD_TESTS )
add_subdirectory(test)
endif()

install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/share/mujincontrollerclient DESTINATION share)
#install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/share/mujinplanningclient DESTINATION share)

# add make uninstall capability
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" IMMEDIATE @ONLY)
add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")

set(MujinControllerClient_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mujincontrollerclient-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/mujincontrollerclient-config.cmake" IMMEDIATE @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mujincontrollerclient-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/mujincontrollerclient-config-version.cmake" IMMEDIATE @ONLY)
set(MujinPlanningClient_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mujinplanningclient-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/mujinplanningclient-config.cmake" IMMEDIATE @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mujinplanningclient-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/mujinplanningclient-config-version.cmake" IMMEDIATE @ONLY)

install(FILES "${CMAKE_CURRENT_BINARY_DIR}/mujincontrollerclient-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/mujincontrollerclient-config-version.cmake" DESTINATION "lib${LIB_SUFFIX}/cmake/${MUJINCLIENT_CMAKE_INSTALL_DIR}")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/mujinplanningclient-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/mujinplanningclient-config-version.cmake" DESTINATION "lib${LIB_SUFFIX}/cmake/${MUJINPLANNINGCLIENT_CMAKE_INSTALL_DIR}")

18 changes: 9 additions & 9 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ There are two ways ot link with the libraries:
Building on Windows
-------------------

In the following documentation %MUJINCLIENTGIT% means the root directory where the sources are checked out.
In the following documentation %MUJINPLANNINGCLIENTGIT% means the root directory where the sources are checked out.

1. Checkout the source code and install

Expand All @@ -53,7 +53,7 @@ In the following documentation %MUJINCLIENTGIT% means the root directory where t

2. Download and install `CMake <http://www.cmake.org/cmake/resources/software.html>`_ (>= v2.8.10)

3. Run CMake on ``%MUJINCLIENTGIT%``, choose the correct Visual Studio version for the Generator.
3. Run CMake on ``%MUJINPLANNINGCLIENTGIT%``, choose the correct Visual Studio version for the Generator.

The most important CMake options are:

Expand All @@ -72,7 +72,7 @@ In the following documentation %MUJINCLIENTGIT% means the root directory where t
5. To build the project using the Visual Studio Command Prompt
::

cd %MUJINCLIENTGIT%\build
cd %MUJINPLANNINGCLIENTGIT%\build
msbuild mujincontrollerclient.sln /p:Configuration=Release

6. In order to Install into ``c:\Program Files``, compile the **INSTALL** project. For Visual Studio 9 2008 and above use
Expand All @@ -92,7 +92,7 @@ Make sure to use the Visual Studio Generators that ends with Win64. For example
Building x86 architecture on x64 Windows
========================================

It is possible to force the architecture that Windows builds on by setting the **MUJINCLIENT_TARGET_PROCESSOR**
It is possible to force the architecture that Windows builds on by setting the **MUJINPLANNINGCLIENT_TARGET_PROCESSOR**

.. image:: https://raw.github.com/mujin/controllerclientcpp/master/docs/crosscompile_forcex86.png

Expand All @@ -118,12 +118,12 @@ If OpenSSL libraries do not exist for the specific Visual Studio version

For win32 (x86) run::

perl Configure VC-WIN32 --prefix=%MUJINCLIENTGIT%\msvc_binaries\x86\vcXX
perl Configure VC-WIN32 --prefix=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\x86\vcXX
ms\do_nasm

For win64 (amd64) run::

perl Configure VC-WIN64A --prefix=%MUJINCLIENTGIT%\msvc_binaries\amd64\vcXX
perl Configure VC-WIN64A --prefix=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\amd64\vcXX
ms\do_win64a

For all builds, run::
Expand All @@ -140,19 +140,19 @@ If libcurl libraries do not exist for the specific Visual Studio version

1. Uncompress ``curl-7.32.0-patched.tar.gz``

2. In the Visual Studio Command Prompt and cd into ``%MUJINCLIENTGIT%/curl-7.32.0`` and double check the lib/CMakeLists.txt. Create and compile the project with the following command::
2. In the Visual Studio Command Prompt and cd into ``%MUJINPLANNINGCLIENTGIT%/curl-7.32.0`` and double check the lib/CMakeLists.txt. Create and compile the project with the following command::

mkdir buildvcXX
cd buildvcXX

For x86::

cmake -DOPENSSL_ROOT_DIR=%MUJINCLIENTGIT%\msvc_binaries\x86\vcXX -DCMAKE_REQUIRED_INCLUDES=%MUJINCLIENTGIT%\msvc_binaries\x86\vcXX\include -DBUILD_CURL_TESTS=OFF -DCURL_USE_ARES=OFF -DCURL_STATICLIB=OFF -DCMAKE_INSTALL_PREFIX=%MUJINCLIENTGIT%\msvc_binaries\x86\vcXX -G "Visual Studio XX" ..
cmake -DOPENSSL_ROOT_DIR=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\x86\vcXX -DCMAKE_REQUIRED_INCLUDES=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\x86\vcXX\include -DBUILD_CURL_TESTS=OFF -DCURL_USE_ARES=OFF -DCURL_STATICLIB=OFF -DCMAKE_INSTALL_PREFIX=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\x86\vcXX -G "Visual Studio XX" ..
msbuild CURL.sln /p:Configuration=Release

For amd64::

cmake -DOPENSSL_ROOT_DIR=%MUJINCLIENTGIT%\msvc_binaries\amd64\vcXX -DCMAKE_REQUIRED_INCLUDES=%MUJINCLIENTGIT%\msvc_binaries\amd64\vcXX\include -DBUILD_CURL_TESTS=OFF -DCURL_USE_ARES=OFF -DCURL_STATICLIB=OFF -DCMAKE_INSTALL_PREFIX=%MUJINCLIENTGIT%\msvc_binaries\amd64\vcXX -G "Visual Studio XX Win64" ..
cmake -DOPENSSL_ROOT_DIR=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\amd64\vcXX -DCMAKE_REQUIRED_INCLUDES=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\amd64\vcXX\include -DBUILD_CURL_TESTS=OFF -DCURL_USE_ARES=OFF -DCURL_STATICLIB=OFF -DCMAKE_INSTALL_PREFIX=%MUJINPLANNINGCLIENTGIT%\msvc_binaries\amd64\vcXX -G "Visual Studio XX Win64" ..
msbuild CURL.sln /p:Configuration=Release

3. To install, for Visual Studio 10 2010 and above use
Expand Down
Loading