-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi!
Success! Finally I was able to fully build the latest wengophone-2.2 revision with Visual Studio 2005 Express Edition! First of all I would like to refine my first post[1] with a few corrections: 1. I used wengophone-2.2 (rev 13252) instead of (rev 13237) 2. You actually you do NOT need to change the "C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat" file for this project. "vsvars32.bat" actually only needs to be modified if you want to use the Platform SDK and/or DirectX SDK and want to compile your programs on the command line. So just let all of the given environment variables be set by the system and add the "Include" and "Lib"-paths as described in Visual Studio C++ 2005. Ok. As promised I attached my patchset for revision 13253 of wengophone-2.2. I'll try to explain what happened and what I have changed. I also may have questions and I by no means think that this is the ultimate solution. So if you think you can pinpoint what could be done better I would be very glad! Basically you can follow steps 1 to 7 from my first post[1] except for my corrections above. Let's continue with the next steps: 8. Patch the files As mentioned just apply my attached patchset (wengophone_2.2_r13252_dpat-2.diff). This can easily be done with TortoiseSVN. Right-click on the wengophone-2.2 folder, click "Apply patch.." and choose the file. After that you will see a popup "file patches". Just right-click on it and choose "Patch all". Done! 9. Configure wengophone (create Visual Studio Project files): 9a. Run "C:\Projects\wengophone-2.2\build\create_vcproj-VC80.bat" You can actually just double-click on it. "vsvars32.bat" is called out of it. This should create the Visual Studio project files. 10. Open the project The Visual Studio Solution is then located in the "build"-directory. After opening it you'll notice a popup "The solution already conatains an item named 'lrelease'. That's not critical so just ignore it! (Maybe somebody knows how to get rid of it.) 11. Build wengophone You can either build the whole solution, the project "ALL_BUILD" or the project "WengoPhone". The safest bet would be to build the whole solution. Actually all of Visual Studio project files / properties are also rebuild (by some CMake-Magic) so it might be necessary to build wengophone a second time. In fact you have to rebuild those projects where you changed any of the cmake-files (or at least have to wait until the initial configuration is done and start over). After some time (go out and meet some friends ;) ) you should see a fine built "wengophone.exe" in your build-directory. 12. Start it and have fun debugging... Additional notes on my patchset: - - libs/3rdparty/qt4/CMakeLists.txt Since a version of Qt 4.x the DLLs of the lib are now ending with a "4". I have changed that accordingly. - - libs/owutil/util/CMakeLists.txt - - libs/webcam/CMakeLists.txt - - wifo/phapi-util/CMakeLists.txt The lib files of these projects are not created without these definitions. - - owbuild/owbuild/OWCreateProjectBinary.cmake This was tricky and I am still not absolutly sure about it. This patch now enables the post-build-copy-process to copy the DLL and PDB files from the correct directory (by taking the right buildtype (debug vs. release) into account). Maybe someone can take a special look at this one. Thanks! - - wengophone/src/buildid/CMakeLists.txt The Preprocessor Definition "DD_BUILDID" had two "LL" at the end (I don't know why) but they should be an integer. The patch fixes that. - - wifo/owsl/src/core/owsl_address.c OWSL_FUNC_DEF (which is definded as __declspec(dllimport)) is already set in the header. No need to do that again. - - wifo/phapi/CMakeLists.txt There two patches in here... 1. The lib file is not created without this definition. 2. The Visual C++ compiler option "-D" do strip the quotes on the command line[2] so this must be handled by a define in "phapi.c". - - wifo/phapi/phapi.c This is the second part of the "-D"-compiler-option problem of Visual C++. I was not able to get the SVN-Revision into it so it's set to "0". If somebody knows how to fix that (and knows how to include the svn command line in the build process) please let me / us know. Thanks! - - wifo/phapi/test/client/wlm_password.h Altough I think this is just a test-project and not critical for wengophone I tried to fix this. I am again not sure about this one but there seems to be a conflict with "unistd.h" and "stdio.h". This patch fixes the problem. I hope this description was helpful for someone and somebody read so far to read this ;). I really would like to contribute to the project and would like to update the wiki and/or get access to SVN-Repository to do some commits. If anybody is able and willing to guide me through this process please let me know. Thank you! Have a nice day! ~ - Darsha [1] http://article.gmane.org/gmane.comp.voip.wengophone.devel/5743 [2] http://msdn2.microsoft.com/en-us/library/hhzbb5c8(VS.80).aspx -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHmGnVzSfkDjyvKakRAlF6AKDm83/tPXv95ZrcZ0a4k0UrBdYl2QCg2y8M iOLhtbKcMapZgdJYtySomJI= =aq6b -----END PGP SIGNATURE-----
Index: libs/3rdparty/qt4/CMakeLists.txt =================================================================== --- libs/3rdparty/qt4/CMakeLists.txt (revision 13253) +++ libs/3rdparty/qt4/CMakeLists.txt (working copy) @@ -105,8 +105,8 @@ ow_copy_file(${QTDIR}/bin/QtXmld4.dll ${BUILD_DIR}) ow_copy_file(${QTDIR}/bin/QtSvgd4.dll ${BUILD_DIR}) #${BUILD_DIR}/imageformats/qmngd1.dll first then it creates imageformats directory - ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qmngd1.dll ${BUILD_DIR}/imageformats/qmngd1.dll) - ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qjpegd1.dll ${BUILD_DIR}/imageformats) + ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qmngd4.dll ${BUILD_DIR}/imageformats) + ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qjpegd4.dll ${BUILD_DIR}/imageformats) ow_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/binary-lib/msvc/imageformats/qgifd1.dll ${BUILD_DIR}/imageformats) else (CMAKE_BUILD_TYPE MATCHES Debug) ow_copy_file(${QTDIR}/bin/QtCore4.dll ${BUILD_DIR}) @@ -114,8 +114,8 @@ ow_copy_file(${QTDIR}/bin/QtXml4.dll ${BUILD_DIR}) ow_copy_file(${QTDIR}/bin/QtSvg4.dll ${BUILD_DIR}) #${BUILD_DIR}/imageformats/qmng1.dll first then it creates imageformats directory - ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qmng1.dll ${BUILD_DIR}/imageformats/qmng1.dll) - ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qjpeg1.dll ${BUILD_DIR}/imageformats) + ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qmng4.dll ${BUILD_DIR}/imageformats) + ow_copy_file(${QT_PLUGINS_DIR}/imageformats/qjpeg4.dll ${BUILD_DIR}/imageformats) ow_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/binary-lib/msvc/imageformats/qgif1.dll ${BUILD_DIR}/imageformats) endif (CMAKE_BUILD_TYPE MATCHES Debug) endif (MSVC) Index: libs/owutil/util/CMakeLists.txt =================================================================== --- libs/owutil/util/CMakeLists.txt (revision 13253) +++ libs/owutil/util/CMakeLists.txt (working copy) @@ -5,6 +5,11 @@ boost ) +ow_add_private_definitions( + -DOWUTIL_DLL + -DBUILD_OWUTIL_DLL +) + ow_add_sources( src/Base64.cpp src/CountryList.cpp Index: libs/webcam/CMakeLists.txt =================================================================== --- libs/webcam/CMakeLists.txt (revision 13253) +++ libs/webcam/CMakeLists.txt (working copy) @@ -18,6 +18,11 @@ owthread ) +ow_add_private_definitions( + -DWEBCAM_DLL + -DBUILD_WEBCAM_DLL +) + ow_add_public_include_dirs( ${CMAKE_CURRENT_SOURCE_DIR}/include ) Index: owbuild/owbuild/OWCreateProjectBinary.cmake =================================================================== --- owbuild/owbuild/OWCreateProjectBinary.cmake (revision 13253) +++ owbuild/owbuild/OWCreateProjectBinary.cmake (working copy) @@ -68,9 +68,9 @@ # Copy project binary if (MSVC) - ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.dll ${PROJECT_BINARY_COPY_DIR}/) + ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${PROJECT_NAME}.dll ${PROJECT_BINARY_COPY_DIR}/) if (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo) - ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pdb ${PROJECT_BINARY_COPY_DIR}/) + ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${PROJECT_NAME}.pdb ${PROJECT_BINARY_COPY_DIR}/) endif (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo) endif (MSVC) @@ -97,9 +97,9 @@ # Copy project binary if (MSVC) - ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.dll ${PROJECT_BINARY_COPY_DIR}/) + ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${PROJECT_NAME}.dll ${PROJECT_BINARY_COPY_DIR}/) if (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo) - ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pdb ${PROJECT_BINARY_COPY_DIR}/) + ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${PROJECT_NAME}.pdb ${PROJECT_BINARY_COPY_DIR}/) endif (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo) endif (MSVC) @@ -151,9 +151,9 @@ # Copy project binary if (MSVC) - ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.exe ${PROJECT_BINARY_COPY_DIR}/) + ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${PROJECT_NAME}.exe ${PROJECT_BINARY_COPY_DIR}/) if (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo) - ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pdb ${PROJECT_BINARY_COPY_DIR}/) + ow_post_build_copy_file(${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${PROJECT_NAME}.pdb ${PROJECT_BINARY_COPY_DIR}/) endif (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo) endif (MSVC) Index: wengophone/src/buildid/CMakeLists.txt =================================================================== --- wengophone/src/buildid/CMakeLists.txt (revision 13253) +++ wengophone/src/buildid/CMakeLists.txt (working copy) @@ -17,14 +17,14 @@ if (BUILDID_SUPPORT) ow_add_private_definitions( - -DDD_BUILDID=${CURRENT_DATE_TIME}LL + -DDD_BUILDID=${CURRENT_DATE_TIME} -DDD_VERSION=${APPLICATION_VERSION} -DDD_REVISION=${SVN_REVISION} -DDD_SOFTPHONE_NAME=wengo ) else (BUILDID_SUPPORT) ow_add_private_definitions( - -DDD_BUILDID=0LL + -DDD_BUILDID=0 -DDD_VERSION=0 -DDD_REVISION=0 -DDD_SOFTPHONE_NAME=wengo Index: wifo/owsl/src/core/owsl_address.c =================================================================== --- wifo/owsl/src/core/owsl_address.c (revision 13253) +++ wifo/owsl/src/core/owsl_address.c (working copy) @@ -985,8 +985,7 @@ } /* TODO: refactor owsl_address_public_ip_get (temporary copied from eXosip) */ -OWSL_FUNC_DEF int -owsl_address_public_ip_get +int owsl_address_public_ip_get ( OWSLAddressFamily family, char * ip, Index: wifo/phapi-util/CMakeLists.txt =================================================================== --- wifo/phapi-util/CMakeLists.txt (revision 13253) +++ wifo/phapi-util/CMakeLists.txt (working copy) @@ -8,6 +8,11 @@ ${CMAKE_CURRENT_SOURCE_DIR}/include ) +ow_add_private_definitions( + -DPHAPIUTIL_DLL + -DBUILD_PHAPIUTIL_DLL +) + if (WIN32) ow_add_public_include_dirs( ${CMAKE_CURRENT_SOURCE_DIR}/include/phapi-util/msvc Index: wifo/phapi/CMakeLists.txt =================================================================== --- wifo/phapi/CMakeLists.txt (revision 13253) +++ wifo/phapi/CMakeLists.txt (working copy) @@ -54,6 +54,7 @@ -DUSE_SPXEC=1 -DPH_FORCE_16KHZ=1 -DUSE_FLV1_OVER_H261=1 + -DBUILD_PHAPI_DLL ) if (PHAPI_CODEC_ILBC_SUPPORT) @@ -64,7 +65,7 @@ if (MSVC) ow_add_private_definitions( - -DWENGOPHONE_UA="""wengo/v1/wengophoneng/wengo/rev${SVN_REVISION}/trunk/""" + -DWENGOPHONE_UA_MSVC ) else (MSVC) ow_add_private_definitions( Index: wifo/phapi/phapi.c =================================================================== --- wifo/phapi/phapi.c (revision 13253) +++ wifo/phapi/phapi.c (working copy) @@ -26,6 +26,10 @@ #define usleep(usecs) Sleep((usecs)/1000) #endif +#if defined(WENGOPHONE_UA_MSVC) +#define WENGOPHONE_UA "wengo/v1/wengophoneng/wengo/rev0/trunk/" +#endif + int owplHttpTunnelIsInitialized = 0; static int owslIsInitialized = 0; Index: wifo/phapi/test/client/wlm_password.h =================================================================== --- wifo/phapi/test/client/wlm_password.h (revision 13253) +++ wifo/phapi/test/client/wlm_password.h (working copy) @@ -1,9 +1,7 @@ #ifndef WLM_PASSWORD_H #define WLM_PASSWORD_H -#ifndef WINDOWS -#include <unistd.h> -#endif /* WINDOWS */ +#include <stdio.h> char * wlm_sip_password_get
_______________________________________________ Wengophone-devel mailing list Wengophone-devel@lists.openwengo.com http://dev.openwengo.com/mailman/listinfo/wengophone-devel