Revision: 9116 http://sourceforge.net/p/playerstage/svn/9116 Author: jpgr87 Date: 2013-01-05 23:36:46 +0000 (Sat, 05 Jan 2013) Log Message: ----------- Initial MinGW support
This commit adds initial support to Player for building with the MinGW compiler suite on Windows or other platforms (via cross-compilers). The support is initially limited to the core Player libraries, console-based utilities, and drivers that don't require third-party dependencies. Further support (gtk, boost, etc) is ongoing. Currently this support is being tested using the MinGW compiler suite on Windows 7, and using the MinGW 32 and 64 cross-compilers on Fedora 18, with binaries run via WINE. Modified Paths: -------------- code/player/trunk/client_libs/libplayerc/CMakeLists.txt code/player/trunk/client_libs/libplayerc/dev_camera.c code/player/trunk/client_libs/libplayerc/playerc.h code/player/trunk/client_libs/libplayerc++/test/test_actarray.cc code/player/trunk/client_libs/libplayerc++/test/test_coopobject.cc code/player/trunk/client_libs/libplayerc++/test/test_dio.cc code/player/trunk/client_libs/libplayerc++/test/test_gripper.cc code/player/trunk/client_libs/libplayerc++/test/test_position2d.cc code/player/trunk/client_libs/libplayerc++/test/test_ptz.cc code/player/trunk/client_libs/libplayerc++/test/test_speech.cc code/player/trunk/examples/libplayerc++/args.h code/player/trunk/examples/plugins/exampledriver/exampledriver.cc code/player/trunk/examples/plugins/exampleinterface/CMakeLists.txt code/player/trunk/examples/plugins/multidriver/multidriver.cc code/player/trunk/libplayercore/plugins.cc code/player/trunk/libplayercore/plugins.h code/player/trunk/libplayercore/wallclocktime.h code/player/trunk/libplayerinterface/CMakeLists.txt code/player/trunk/libplayerinterface/functiontable.h code/player/trunk/libplayerinterface/playerxdrgen.py code/player/trunk/libplayertcp/CMakeLists.txt code/player/trunk/replace/CMakeLists.txt code/player/trunk/replace/clock_gettime.c code/player/trunk/replace/xdr_mem.c code/player/trunk/server/drivers/blobfinder/searchpattern/searchpattern.cc code/player/trunk/server/drivers/camera/camerareq/camerareq.cc code/player/trunk/server/drivers/camera/imgcmp/imgcmp.cc code/player/trunk/server/drivers/dio/diodelay/diodelay.cc code/player/trunk/server/drivers/fiducial/laserfeature.cc code/player/trunk/server/drivers/laser/bumper2laser.cc code/player/trunk/server/drivers/laser/sicks3000.cc code/player/trunk/server/drivers/localization/amcl/amcl.cc code/player/trunk/server/drivers/localization/fakelocalize.cc code/player/trunk/server/drivers/map/gridmap.h code/player/trunk/server/drivers/mixed/rmp/CMakeLists.txt code/player/trunk/server/drivers/position/deadstop/deadstop.cc code/player/trunk/server/drivers/position/differential/chronos.cc code/player/trunk/server/drivers/position/motionmind/motionmind.cc code/player/trunk/server/drivers/position/nav200/nav200.h code/player/trunk/server/drivers/position/nd/nd_plugin.cc code/player/trunk/server/drivers/position/segwayrmp400/segwayrmp400.h code/player/trunk/server/drivers/position/snd/snd.cc code/player/trunk/server/drivers/shell/diocmd.cc code/player/trunk/server/drivers/shell/dummy.cc code/player/trunk/server/drivers/shell/gripcmd.cc code/player/trunk/server/drivers/shell/opaquecmd.cc code/player/trunk/server/drivers/shell/readlog.cc code/player/trunk/server/drivers/shell/speechcmd.cc code/player/trunk/server/drivers/shell/velcmd.cc code/player/trunk/server/drivers/vectormap/vec2map.cc code/player/trunk/utils/logsplitter/logsplitter.c code/player/trunk/utils/playerprint/playerprint.cc code/player/trunk/utils/playerprop/playerprop.cpp code/player/trunk/utils/pmap/CMakeLists.txt Modified: code/player/trunk/client_libs/libplayerc/CMakeLists.txt =================================================================== --- code/player/trunk/client_libs/libplayerc/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -81,7 +81,7 @@ PLAYERC_ADD_LINK_LIB (socket nsl rt) ENDIF (PLAYER_OS_QNX) IF (PLAYER_OS_WIN) - PLAYERC_ADD_LINK_LIB (Ws2_32) + PLAYERC_ADD_LINK_LIB (ws2_32) ENDIF (PLAYER_OS_WIN) LINK_DIRECTORIES (${PLAYERC_EXTRA_LINK_DIRS}) Modified: code/player/trunk/client_libs/libplayerc/dev_camera.c =================================================================== --- code/player/trunk/client_libs/libplayerc/dev_camera.c 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc/dev_camera.c 2013-01-05 23:36:46 UTC (rev 9116) @@ -127,7 +127,7 @@ if (device->image) memcpy(device->image, data->image, device->image_count); else - PLAYERC_ERR1("failed to allocate memory for image, needed %u bytes\n", sizeof(device->image[0])*device->image_count); + PLAYERC_ERR1("failed to allocate memory for image, needed %lu bytes\n", sizeof(device->image[0])*device->image_count); } else { if (device->image) free(device->image); @@ -163,7 +163,7 @@ if (device->image) memcpy(device->image, dst, dst_size); else - PLAYERC_ERR1("failed to allocate memory for image, needed %u bytes\n", (sizeof device->image[0]) * device->image_count); + PLAYERC_ERR1("failed to allocate memory for image, needed %lu bytes\n", (sizeof device->image[0]) * device->image_count); free(dst); // Pixels are now raw @@ -290,7 +290,7 @@ if (device->image) memcpy(device->image, data->image, device->image_count); else - PLAYERC_ERR1("failed to allocate memory for image, needed %u bytes\n", (sizeof device->image[0]) * device->image_count); + PLAYERC_ERR1("failed to allocate memory for image, needed %lu bytes\n", (sizeof device->image[0]) * device->image_count); } else { if (device->image) free(device->image); Modified: code/player/trunk/client_libs/libplayerc/playerc.h =================================================================== --- code/player/trunk/client_libs/libplayerc/playerc.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc/playerc.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -1591,41 +1591,37 @@ /** @brief Create a cooperating object proxy. */ -playerc_coopobject_t *playerc_coopobject_create(playerc_client_t *client, int index); +PLAYERC_EXPORT playerc_coopobject_t *playerc_coopobject_create(playerc_client_t *client, int index); /** @brief Destroy a cooperating object proxy. */ -void playerc_coopobject_destroy(playerc_coopobject_t *device); +PLAYERC_EXPORT void playerc_coopobject_destroy(playerc_coopobject_t *device); /** @brief Subscribe to the cooperating object device. */ -int playerc_coopobject_subscribe(playerc_coopobject_t *device, int access); +PLAYERC_EXPORT int playerc_coopobject_subscribe(playerc_coopobject_t *device, int access); /** @brief Un-subscribe from the cooperating object device. */ -int playerc_coopobject_unsubscribe(playerc_coopobject_t *device); +PLAYERC_EXPORT int playerc_coopobject_unsubscribe(playerc_coopobject_t *device); /** @brief Send data to cooperating object. */ -int -playerc_coopobject_send_position(playerc_coopobject_t *device, uint16_t node_id, uint16_t source_id, player_pose2d_t pos, uint8_t status); +PLAYERC_EXPORT int playerc_coopobject_send_position(playerc_coopobject_t *device, uint16_t node_id, uint16_t source_id, player_pose2d_t pos, uint8_t status); /** @brief Send data to cooperating object. */ -int -playerc_coopobject_send_data(playerc_coopobject_t *device, int node_id, int source_id, int data_type, int data_size, unsigned char *extradata); +PLAYERC_EXPORT int playerc_coopobject_send_data(playerc_coopobject_t *device, int node_id, int source_id, int data_type, int data_size, unsigned char *extradata); /** @brief Send command to cooperating object. */ -int -playerc_coopobject_send_cmd(playerc_coopobject_t *device, int node_id, int source_id, int cmd, int parameters_size, unsigned char *parameters); +PLAYERC_EXPORT int playerc_coopobject_send_cmd(playerc_coopobject_t *device, int node_id, int source_id, int cmd, int parameters_size, unsigned char *parameters); /** @brief Send request to cooperating object. */ -int -playerc_coopobject_send_req(playerc_coopobject_t *device, int node_id, int source_id, int req, int parameters_size, unsigned char *parameters); +PLAYERC_EXPORT int playerc_coopobject_send_req(playerc_coopobject_t *device, int node_id, int source_id, int req, int parameters_size, unsigned char *parameters); // /** Put the node in sleep mode (0) or wake it up (1). */ -//int playerc_coopobject_power(playerc_coopobject_t *device, int node_id, int group_id, int value); +//PLAYERC_EXPORT int playerc_coopobject_power(playerc_coopobject_t *device, int node_id, int group_id, int value); // /** Change the data type to RAW or converted engineering units. */ -//int playerc_coopobject_datatype(playerc_coopobject_t *device, int value); +//PLAYERC_EXPORT int playerc_coopobject_datatype(playerc_coopobject_t *device, int value); // /** Change data delivery frequency. */ -//int playerc_coopobject_datafreq(playerc_coopobject_t *device, int node_id, int group_id, double frequency); +//PLAYERC_EXPORT int playerc_coopobject_datafreq(playerc_coopobject_t *device, int node_id, int group_id, double frequency); /** @} */ /***************************************************************************/ Modified: code/player/trunk/client_libs/libplayerc++/test/test_actarray.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_actarray.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_actarray.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,7 +24,7 @@ */ #include "test.h" -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif Modified: code/player/trunk/client_libs/libplayerc++/test/test_coopobject.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_coopobject.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_coopobject.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,6 +24,9 @@ **************************************************************************/ #include "test.h" +#if !defined (WIN32) || defined (__MINGW32__) + #include <unistd.h> +#endif int test_coopobject(PlayerClient* client, int index) { @@ -49,7 +52,7 @@ delete cp; - sleep(10); + usleep(10000000); std::cout << "Suscribing again\n" << std::endl; Modified: code/player/trunk/client_libs/libplayerc++/test/test_dio.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_dio.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_dio.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,7 +24,7 @@ */ #include "test.h" -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif Modified: code/player/trunk/client_libs/libplayerc++/test/test_gripper.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_gripper.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_gripper.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,7 +24,7 @@ */ #include "test.h" -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif Modified: code/player/trunk/client_libs/libplayerc++/test/test_position2d.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_position2d.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_position2d.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,7 +24,7 @@ */ #include "test.h" -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #include <math.h> Modified: code/player/trunk/client_libs/libplayerc++/test/test_ptz.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_ptz.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_ptz.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,7 +24,7 @@ */ #include "test.h" -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif Modified: code/player/trunk/client_libs/libplayerc++/test/test_speech.cc =================================================================== --- code/player/trunk/client_libs/libplayerc++/test/test_speech.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/client_libs/libplayerc++/test/test_speech.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -22,7 +22,7 @@ */ #include "test.h" -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #include <string> Modified: code/player/trunk/examples/libplayerc++/args.h =================================================================== --- code/player/trunk/examples/libplayerc++/args.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/examples/libplayerc++/args.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -30,7 +30,7 @@ #include <cstring> #include <libplayerc++/playerc++.h> #include <iostream> -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #if !HAVE_GETOPT Modified: code/player/trunk/examples/plugins/exampledriver/exampledriver.cc =================================================================== --- code/player/trunk/examples/plugins/exampledriver/exampledriver.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/examples/plugins/exampledriver/exampledriver.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -31,7 +31,7 @@ #include <config.h> */ -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #include <string.h> Modified: code/player/trunk/examples/plugins/exampleinterface/CMakeLists.txt =================================================================== --- code/player/trunk/examples/plugins/exampleinterface/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/examples/plugins/exampleinterface/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -40,7 +40,9 @@ TARGET_LINK_LIBRARIES (example_driver playercore) ADD_EXECUTABLE (example_client example_client.c ${example_interface_h}) TARGET_LINK_LIBRARIES (example_client playerc playerinterface playercommon ${PLAYERC_EXTRA_LINK_LIBRARIES} example) - +IF (WIN32) + ADD_DEFINITIONS(-Dplayerxdr_EXPORTS) +ENDIF(WIN32) SET (exampleCMakeLists_in ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt.example.in) SET (exampleCMakeLists ${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.txt.example) SET (exampleDestDir share/${PROJECT_NAME_LOWER}/examples/plugins/exampleinterface) Modified: code/player/trunk/examples/plugins/multidriver/multidriver.cc =================================================================== --- code/player/trunk/examples/plugins/multidriver/multidriver.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/examples/plugins/multidriver/multidriver.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -35,8 +35,10 @@ #include <config.h> */ +#if !defined (WIN32) || defined (__MINGW32__) + #include <unistd.h> +#endif #if !defined (WIN32) - #include <unistd.h> #include <netinet/in.h> #endif #include <string.h> Modified: code/player/trunk/libplayercore/plugins.cc =================================================================== --- code/player/trunk/libplayercore/plugins.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayercore/plugins.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -41,7 +41,7 @@ #include <string.h> #include <stdlib.h> #if defined (WIN32) - #if defined (HAVE_SETDLLDIRECTORY) + #if defined (HAVE_SETDLLDIRECTORY) && !defined (__MINGW32__) #define _WIN32_WINNT 0x0502 #endif #include <windows.h> @@ -164,7 +164,7 @@ } else { -#if defined (HAVE_SETDLLDIRECTORY) +#if defined (HAVE_SETDLLDIRECTORY) && !defined (__MINGW32__) // Add the various search paths to the list // Start with $PLAYERPATH, if set char playerpath[PATH_MAX]; @@ -232,7 +232,7 @@ LPVOID buffer = NULL; FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), 0, reinterpret_cast<LPTSTR> (&buffer), 0, NULL ); - PLAYER_ERROR2( "Failed to load plugin: %s\n", reinterpret_cast<LPTSTR> (buffer) ); + PLAYER_ERROR1( "Failed to load plugin: %s\n", reinterpret_cast<LPTSTR> (buffer) ); LocalFree( buffer ); return NULL; } Modified: code/player/trunk/libplayercore/plugins.h =================================================================== --- code/player/trunk/libplayercore/plugins.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayercore/plugins.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -53,7 +53,7 @@ #if HAVE_LIBLTDL #include <ltdl.h> #elif defined (WIN32) - #include <Windows.h> + #include <windows.h> #define lt_dlhandle HMODULE #else #define lt_dlhandle int Modified: code/player/trunk/libplayercore/wallclocktime.h =================================================================== --- code/player/trunk/libplayercore/wallclocktime.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayercore/wallclocktime.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -61,7 +61,10 @@ #if defined WIN32 // For struct timeval - #include <Winsock2.h> + #include <winsock2.h> + #if defined __MINGW32__ + #include <sys/time.h> + #endif #else #include <sys/time.h> #endif Modified: code/player/trunk/libplayerinterface/CMakeLists.txt =================================================================== --- code/player/trunk/libplayerinterface/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayerinterface/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -102,7 +102,8 @@ PLAYER_ADD_LIBRARY (playerinterface ${playerinterfaceSrcs}) TARGET_LINK_LIBRARIES (playerinterface playercommon) IF (PLAYER_OS_WIN) - TARGET_LINK_LIBRARIES (playerinterface Ws2_32) + ADD_DEFINITIONS(-Dplayerxdr_EXPORTS) + TARGET_LINK_LIBRARIES (playerinterface ws2_32) ENDIF (PLAYER_OS_WIN) SET_SOURCE_FILES_PROPERTIES (${playerxdr_h} ${playerxdr_c} PROPERTIES GENERATED TRUE) IF (PLAYER_OS_QNX) Modified: code/player/trunk/libplayerinterface/functiontable.h =================================================================== --- code/player/trunk/libplayerinterface/functiontable.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayerinterface/functiontable.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -50,7 +50,7 @@ #if defined (WIN32) #if defined (PLAYER_STATIC) #define PLAYERXDR_EXPORT - #elif defined (playerinterface_EXPORTS) + #elif defined (playerxdr_EXPORTS) #define PLAYERXDR_EXPORT __declspec (dllexport) #else #define PLAYERXDR_EXPORT __declspec (dllimport) Modified: code/player/trunk/libplayerinterface/playerxdrgen.py =================================================================== --- code/player/trunk/libplayerinterface/playerxdrgen.py 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayerinterface/playerxdrgen.py 2013-01-05 23:36:46 UTC (rev 9116) @@ -501,7 +501,7 @@ #if defined (WIN32) #if defined (PLAYER_STATIC) #define PLAYERXDR_EXPORT - #elif defined (playerinterface_EXPORTS) + #elif defined (playerxdr_EXPORTS) #define PLAYERXDR_EXPORT __declspec (dllexport) #else #define PLAYERXDR_EXPORT __declspec (dllimport) Modified: code/player/trunk/libplayertcp/CMakeLists.txt =================================================================== --- code/player/trunk/libplayertcp/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/libplayertcp/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -41,7 +41,7 @@ TARGET_LINK_LIBRARIES (playertcp playercore playercommon playerinterface ${playerreplaceLib} ${SOCKET_LIBS}) IF (PLAYER_OS_WIN) - TARGET_LINK_LIBRARIES (playertcp Ws2_32) + TARGET_LINK_LIBRARIES (playertcp ws2_32) ENDIF (PLAYER_OS_WIN) IF (SOCKET_LIBS) PLAYERCORE_ADD_INT_LINK_LIB (${SOCKET_LIBS}) @@ -75,7 +75,7 @@ TARGET_LINK_LIBRARIES (playerudp playercore playercommon playerinterface ${playerreplaceLib} ${SOCKET_LIBS}) IF (PLAYER_OS_WIN) - TARGET_LINK_LIBRARIES (playerudp Ws2_32) + TARGET_LINK_LIBRARIES (playerudp ws2_32) ENDIF (PLAYER_OS_WIN) IF (SOCKET_LIBS) PLAYERCORE_ADD_INT_LINK_LIB (${SOCKET_LIBS}) Modified: code/player/trunk/replace/CMakeLists.txt =================================================================== --- code/player/trunk/replace/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/replace/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -14,7 +14,7 @@ xdr_mem.c xdr_sizeof.c) IF (PLAYER_OS_WIN) - SET (ws2_32lib Ws2_32) + SET (ws2_32lib ws2_32) ENDIF (PLAYER_OS_WIN) ENDIF (NOT HAVE_XDR) @@ -57,7 +57,7 @@ IF (NOT HAVE_POLL) SET (replaceSrcs ${replaceSrcs} poll.c) IF (PLAYER_OS_WIN) - SET (ws2_32lib Ws2_32) + SET (ws2_32lib ws2_32) ENDIF (PLAYER_OS_WIN) ENDIF (NOT HAVE_POLL) @@ -70,7 +70,7 @@ TARGET_LINK_LIBRARIES (playerreplace playercommon) IF (PLAYER_OS_WIN) IF (NOT HAVE_XDR OR NOT HAVE_POLL) - TARGET_LINK_LIBRARIES (playerreplace Ws2_32) + TARGET_LINK_LIBRARIES (playerreplace ws2_32) ENDIF (NOT HAVE_XDR OR NOT HAVE_POLL) PLAYER_MAKE_PKGCONFIG ("playerreplace" "Player library of replacements for missing platform functionality - part of the Player Project" "playercommon ${ws2_32Lib}" "" "" "") ELSE (PLAYER_OS_WIN) Modified: code/player/trunk/replace/clock_gettime.c =================================================================== --- code/player/trunk/replace/clock_gettime.c 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/replace/clock_gettime.c 2013-01-05 23:36:46 UTC (rev 9116) @@ -24,7 +24,7 @@ #include <time.h> #if defined WIN32 // For struct timeval - #include <Winsock2.h> + #include <winsock2.h> #else #include <sys/time.h> #endif Modified: code/player/trunk/replace/xdr_mem.c =================================================================== --- code/player/trunk/replace/xdr_mem.c 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/replace/xdr_mem.c 2013-01-05 23:36:46 UTC (rev 9116) @@ -43,7 +43,7 @@ //#include <rpc/rpc.h> #include "rpc/xdr.h" #ifdef WIN32 -#include <Winsock2.h> +#include <winsock2.h> #else #include <arpa/inet.h> #endif Modified: code/player/trunk/server/drivers/blobfinder/searchpattern/searchpattern.cc =================================================================== --- code/player/trunk/server/drivers/blobfinder/searchpattern/searchpattern.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/blobfinder/searchpattern/searchpattern.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -101,6 +101,9 @@ #if HAVE_JPEG #include <libplayerjpeg/playerjpeg.h> #endif +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #define EPS 0.000001 Modified: code/player/trunk/server/drivers/camera/camerareq/camerareq.cc =================================================================== --- code/player/trunk/server/drivers/camera/camerareq/camerareq.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/camera/camerareq/camerareq.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -85,6 +85,9 @@ #include <string.h> #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif class Camerareq : public ThreadedDriver { Modified: code/player/trunk/server/drivers/camera/imgcmp/imgcmp.cc =================================================================== --- code/player/trunk/server/drivers/camera/imgcmp/imgcmp.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/camera/imgcmp/imgcmp.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -111,6 +111,9 @@ #if HAVE_JPEG #include <libplayerjpeg/playerjpeg.h> #endif +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #define QUEUE_LEN 1 Modified: code/player/trunk/server/drivers/dio/diodelay/diodelay.cc =================================================================== --- code/player/trunk/server/drivers/dio/diodelay/diodelay.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/dio/diodelay/diodelay.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -97,6 +97,9 @@ #include <assert.h> // for assert() #include <pthread.h> // for pthread_testcancel() #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif class DioDelay : public ThreadedDriver { Modified: code/player/trunk/server/drivers/fiducial/laserfeature.cc =================================================================== --- code/player/trunk/server/drivers/fiducial/laserfeature.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/fiducial/laserfeature.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -122,7 +122,7 @@ #include <math.h> #include <stdlib.h> // for atoi(3) // needed for usleep, no unistd.h on windows. -#if WIN32 +#if WIN32 && !__MINGW32__ #include <replace/replace.h> #else #include <unistd.h> Modified: code/player/trunk/server/drivers/laser/bumper2laser.cc =================================================================== --- code/player/trunk/server/drivers/laser/bumper2laser.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/laser/bumper2laser.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -78,6 +78,9 @@ #include <math.h> #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #ifndef M_PI #define M_PI (3.14159265358979323846) Modified: code/player/trunk/server/drivers/laser/sicks3000.cc =================================================================== --- code/player/trunk/server/drivers/laser/sicks3000.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/laser/sicks3000.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -114,7 +114,7 @@ // 1 second of data at 500kbaud #define DEFAULT_RX_BUFFER_SIZE 500*1024/8 -#if defined (WIN32) +#if defined (WIN32) && !defined (__MINGW32__) typedef unsigned int ssize_t; #endif Modified: code/player/trunk/server/drivers/localization/amcl/amcl.cc =================================================================== --- code/player/trunk/server/drivers/localization/amcl/amcl.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/localization/amcl/amcl.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -286,7 +286,7 @@ #include <math.h> #include <stdlib.h> // for atoi(3) #include <sys/types.h> -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #include <sys/time.h> #endif @@ -295,7 +295,9 @@ #define PLAYER_ENABLE_MSG 1 #include <libplayercore/playercore.h> - +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #include "amcl.h" // Sensors #include "amcl_odom.h" Modified: code/player/trunk/server/drivers/localization/fakelocalize.cc =================================================================== --- code/player/trunk/server/drivers/localization/fakelocalize.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/localization/fakelocalize.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -106,6 +106,9 @@ #include <string.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #if !defined (min) #define min(x,y) ((x) < (y) ? (x) : (y)) Modified: code/player/trunk/server/drivers/map/gridmap.h =================================================================== --- code/player/trunk/server/drivers/map/gridmap.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/map/gridmap.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -1,6 +1,8 @@ // objects definitions +#if !defined(WIN32) || defined (__MINGW32__) + #include <unistd.h> +#endif #if !defined(WIN32) - #include <unistd.h> #include <netinet/in.h> #endif #include <string.h> Modified: code/player/trunk/server/drivers/mixed/rmp/CMakeLists.txt =================================================================== --- code/player/trunk/server/drivers/mixed/rmp/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/mixed/rmp/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -1,4 +1,5 @@ PLAYERDRIVER_OPTION (segwayrmp build_segwayrmp ON "Build Segway RMP driver") +PLAYERDRIVER_REJECT_OS(segwayrmp build_segwayrmp PLAYER_OS_WIN) SET (CANLIB_DIR "" CACHE STRING "Directory containing the CANLIB headers and libraries") IF (${HAVE_CANLIB}) Modified: code/player/trunk/server/drivers/position/deadstop/deadstop.cc =================================================================== --- code/player/trunk/server/drivers/position/deadstop/deadstop.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/deadstop/deadstop.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -82,6 +82,9 @@ #include <assert.h> #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #define EPS 0.000000001 Modified: code/player/trunk/server/drivers/position/differential/chronos.cc =================================================================== --- code/player/trunk/server/drivers/position/differential/chronos.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/differential/chronos.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -25,7 +25,10 @@ #include <stdexcept> // needed for gettimeofday, no sys/time.h on windows #if WIN32 -#include "Winsock2.h" // for struct timeval definition +#include "winsock2.h" // for struct timeval definition +#endif + +#if defined WIN32 && !defined __MINGW32__ #include "replace/replace.h" // for gettimeofday definition #else #include <sys/time.h> Modified: code/player/trunk/server/drivers/position/motionmind/motionmind.cc =================================================================== --- code/player/trunk/server/drivers/position/motionmind/motionmind.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/motionmind/motionmind.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -110,7 +110,7 @@ /** @} */ -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #include <string.h> Modified: code/player/trunk/server/drivers/position/nav200/nav200.h =================================================================== --- code/player/trunk/server/drivers/position/nav200/nav200.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/nav200/nav200.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -33,12 +33,15 @@ #include <libplayercore/playercore.h> #include <sys/types.h> #include <sys/stat.h> -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <sys/time.h> - #include <termios.h> #include <strings.h> #include <unistd.h> #endif +#if !defined (WIN32) + #include <termios.h> +#endif + #include <fcntl.h> #include <stdio.h> #include <stdlib.h> @@ -48,7 +51,7 @@ #include <math.h> //#include <stdint.h> -#if defined (WIN32) +#if defined (WIN32) && !defined (__MINGW32__) typedef unsigned int ssize_t; #endif Modified: code/player/trunk/server/drivers/position/nd/nd_plugin.cc =================================================================== --- code/player/trunk/server/drivers/position/nd/nd_plugin.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/nd/nd_plugin.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -177,7 +177,7 @@ */ /** @} */ #include <math.h> -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #include <stdlib.h> Modified: code/player/trunk/server/drivers/position/segwayrmp400/segwayrmp400.h =================================================================== --- code/player/trunk/server/drivers/position/segwayrmp400/segwayrmp400.h 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/segwayrmp400/segwayrmp400.h 2013-01-05 23:36:46 UTC (rev 9116) @@ -31,8 +31,10 @@ #include <string.h> #include <stdlib.h> #include <math.h> +#if !defined (WIN32) || defined (__MINGW32__) + #include <unistd.h> +#endif #if !defined (WIN32) - #include <unistd.h> #include <netinet/in.h> #endif Modified: code/player/trunk/server/drivers/position/snd/snd.cc =================================================================== --- code/player/trunk/server/drivers/position/snd/snd.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/position/snd/snd.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -134,8 +134,10 @@ */ /** @} */ +#if !defined (WIN32) || defined (__MINGW32__) + #include <unistd.h> +#endif #if !defined (WIN32) - #include <unistd.h> #include <netinet/in.h> #endif #include <string.h> Modified: code/player/trunk/server/drivers/shell/diocmd.cc =================================================================== --- code/player/trunk/server/drivers/shell/diocmd.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/diocmd.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -92,6 +92,9 @@ #include <string.h> // for memset() #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #define EPS 0.000000000000001 Modified: code/player/trunk/server/drivers/shell/dummy.cc =================================================================== --- code/player/trunk/server/drivers/shell/dummy.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/dummy.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -97,6 +97,9 @@ // Includes needed for player #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif // The Dummy driver class Dummy: public ThreadedDriver Modified: code/player/trunk/server/drivers/shell/gripcmd.cc =================================================================== --- code/player/trunk/server/drivers/shell/gripcmd.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/gripcmd.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -82,6 +82,9 @@ #include <strings.h> // for strcasecmp() #endif #include <pthread.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif class GripCmd : public ThreadedDriver { Modified: code/player/trunk/server/drivers/shell/opaquecmd.cc =================================================================== --- code/player/trunk/server/drivers/shell/opaquecmd.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/opaquecmd.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -88,6 +88,9 @@ #include <string.h> // for memset() #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif class OpaqueCmd : public ThreadedDriver { Modified: code/player/trunk/server/drivers/shell/readlog.cc =================================================================== --- code/player/trunk/server/drivers/shell/readlog.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/readlog.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -139,7 +139,7 @@ #include <ctype.h> #include <errno.h> #include <sys/types.h> -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <sys/time.h> #include <unistd.h> #include <strings.h> Modified: code/player/trunk/server/drivers/shell/speechcmd.cc =================================================================== --- code/player/trunk/server/drivers/shell/speechcmd.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/speechcmd.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -84,6 +84,9 @@ #include <stdio.h> // for snprintf() #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #define MAX_MSG_LEN 255 Modified: code/player/trunk/server/drivers/shell/velcmd.cc =================================================================== --- code/player/trunk/server/drivers/shell/velcmd.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/shell/velcmd.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -112,6 +112,9 @@ #include <string.h> // for memset() #include <pthread.h> #include <libplayercore/playercore.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif class VelCmd : public ThreadedDriver { Modified: code/player/trunk/server/drivers/vectormap/vec2map.cc =================================================================== --- code/player/trunk/server/drivers/vectormap/vec2map.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/server/drivers/vectormap/vec2map.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -82,6 +82,9 @@ #include <assert.h> #include <libplayercore/playercore.h> #include <libplayerwkb/playerwkb.h> +#if !HAVE_NANOSLEEP + #include <replace/replace.h> +#endif #define EPS 0.0000001 #define MAXFABS(a, b) ((fabs(a) > fabs(b)) ? fabs(a) : fabs(b)) Modified: code/player/trunk/utils/logsplitter/logsplitter.c =================================================================== --- code/player/trunk/utils/logsplitter/logsplitter.c 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/utils/logsplitter/logsplitter.c 2013-01-05 23:36:46 UTC (rev 9116) @@ -25,14 +25,14 @@ Author: Radu Bogdan Rusu Date : 20th of September, 2006 */ +#include <time.h> #include <stdio.h> #include <string.h> #include <sys/types.h> #include <stdlib.h> -#include <time.h> #include <math.h> #include <sys/stat.h> -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif @@ -241,8 +241,15 @@ time_t t = (time_t)t1; #if defined (__SVR4) && defined (sun) ctime_r (&t, btime, sizeof (btime)); -#elif defined (WIN32) +#elif defined (WIN32) && !defined (__MINGW32__) ctime_s (btime, sizeof (btime), &t); +#elif defined (__MINGW32__) + // ctime_r is a macro in mingw's time.h, but seems to be overridden somewhere. + // Implement ctime_r ourselves using ctime instead in the meantime + char *result = ctime(&t); + if (result) { + strcpy(btime, result); + } #else ctime_r (&t, btime); #endif Modified: code/player/trunk/utils/playerprint/playerprint.cc =================================================================== --- code/player/trunk/utils/playerprint/playerprint.cc 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/utils/playerprint/playerprint.cc 2013-01-05 23:36:46 UTC (rev 9116) @@ -102,7 +102,7 @@ #include <stdlib.h> // for atoi(3) //#include <libplayerc/playerc.h> // for libplayerc client stuff #include <libplayerc++/playerc++.h> // for libplayerc++ client stuff -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #include <sys/time.h> #endif Modified: code/player/trunk/utils/playerprop/playerprop.cpp =================================================================== --- code/player/trunk/utils/playerprop/playerprop.cpp 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/utils/playerprop/playerprop.cpp 2013-01-05 23:36:46 UTC (rev 9116) @@ -59,7 +59,7 @@ /** @} */ -#if !defined (WIN32) +#if !defined (WIN32) || defined (__MINGW32__) #include <unistd.h> #endif #include <cstdlib> Modified: code/player/trunk/utils/pmap/CMakeLists.txt =================================================================== --- code/player/trunk/utils/pmap/CMakeLists.txt 2013-01-05 21:41:59 UTC (rev 9115) +++ code/player/trunk/utils/pmap/CMakeLists.txt 2013-01-05 23:36:46 UTC (rev 9116) @@ -46,7 +46,7 @@ TARGET_LINK_LIBRARIES (pmap ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES}) ENDIF (GLUT_FOUND) SET_SOURCE_FILES_PROPERTIES (${pmapSrcs} PROPERTIES - COMPILE_FLAGS "${GSL_CFLAGS} --fast-math") + COMPILE_FLAGS "${GSL_CFLAGS} -ffast-math") SET_TARGET_PROPERTIES (pmap PROPERTIES LINK_FLAGS "${GSL_LDFLAGS}") TARGET_LINK_LIBRARIES (pmap ${GSL_PKG_LIBRARIES}) @@ -59,7 +59,7 @@ TARGET_LINK_LIBRARIES (lodo ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES}) ENDIF (GLUT_FOUND) SET_SOURCE_FILES_PROPERTIES (${lodoSrcs} PROPERTIES - COMPILE_FLAGS "${GSL_CFLAGS} --fast-math") + COMPILE_FLAGS "${GSL_CFLAGS} -ffast-math") SET_TARGET_PROPERTIES (lodo PROPERTIES LINK_FLAGS "${GSL_LDFLAGS}") TARGET_LINK_LIBRARIES (lodo ${GSL_PKG_LIBRARIES}) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122912 _______________________________________________ Playerstage-commit mailing list Playerstage-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/playerstage-commit