| 72 | | == Open SSL == |
| | 78 | === OpenSSL === |
| | 79 | |
| | 80 | Openssl does not require anything special out of the box but there are a some tweaking in regards to masm and such which "can" be used. Also note that if you get "ml64 no such file..." errors you are in the wrong shell. You also need to clean out all temp folders if you were in the wrong shell as it does not rebuild otherwise. |
| | 81 | |
| | 82 | '''Download URL:''' [[http://www.openssl.org]] |
| | 83 | |
| | 84 | '''Win32:''' |
| | 85 | {{{ |
| | 86 | # Download and decompress into the following folder: |
| | 87 | cd %TARGET_w32%\openssl-1.0.1c |
| | 88 | perl Configure VC-WIN32 |
| | 89 | ms\do_masm |
| | 90 | nmake -f ms\ntdll.mak |
| | 91 | }}} |
| | 92 | |
| | 93 | '''x64:''' |
| | 94 | {{{ |
| | 95 | # Download and decompress into the following folder: |
| | 96 | cd %TARGET_x64%\openssl-1.0.1c |
| | 97 | perl Configure VC-WIN64A |
| | 98 | ms\do_win64a |
| | 99 | nmake -f ms\ntdll.mak |
| | 100 | }}} |
| | 101 | |
| | 102 | === Google protocol buffers === |
| | 103 | |
| | 104 | Google protocol buffers is a pain as they do not provide any way to build x64 out of the box and also has visual studio file in the wrong format (for me). |
| | 105 | Hence it requires some tweaking. |
| | 106 | |
| | 107 | '''Download URL:''' TODO |
| | 108 | |
| | 109 | '''Win32:''' |
| | 110 | {{{ |
| | 111 | # Download and decompress into the following folder: |
| | 112 | cd %TARGET_w32%\protobuf-2.4.1 |
| | 113 | # TODO Convert visual studio projects: python.exe cvt-msdev.py |
| | 114 | msbuild vsprojects\protobuf.sln /p:Configuration=Release |
| | 115 | msbuild vsprojects\protobuf.sln /p:Configuration=Debug |
| | 116 | }}} |
| | 117 | |
| | 118 | '''x64:''' |
| | 119 | {{{ |
| | 120 | # Download and decompress into the following folder: |
| | 121 | cd %TARGET_w32%\protobuf-2.4.1 |
| | 122 | # TODO Convert visual studio projects: python.exe cvt-msdev.py |
| | 123 | # TODO: Apply x64 patch |
| | 124 | msbuild vsprojects\protobuf.sln /p:Configuration=Release |
| | 125 | msbuild vsprojects\protobuf.sln /p:Configuration=Debug |
| | 126 | }}} |
| | 127 | |
| | 128 | === ZeroMQ === |
| | 129 | |
| | 130 | ZeroMQ is another one of these rather crappy projects with has no x64 version, no vs2005 projects and no support for debug builds. |
| | 131 | In short everything you can do wrong they have nailed it. Hence it requires some tweaking. |
| | 132 | |
| | 133 | '''Download URL:''' TODO |
| | 134 | |
| | 135 | '''Win32:''' |
| | 136 | {{{ |
| | 137 | # Download and decompress into the following folder: |
| | 138 | cd %TARGET_w32%\zeromq-2.2.0 |
| | 139 | # TODO: Convert visual studio projects: python.exe cvt-msdev.py |
| | 140 | # TODO: Apply debug patch |
| | 141 | msbuild builds\msvc\msvc.sln /p:Configuration=Release |
| | 142 | msbuild builds\msvc\msvc.sln /p:Configuration=Debug |
| | 143 | }}} |
| | 144 | |
| | 145 | '''x64:''' |
| | 146 | {{{ |
| | 147 | # Download and decompress into the following folder: |
| | 148 | cd %TARGET_w32%\zeromq-2.2.0 |
| | 149 | # TODO: Convert visual studio projects: python.exe cvt-msdev.py |
| | 150 | # TODO: Apply debug patch |
| | 151 | # TODO: Apply x64 patch |
| | 152 | msbuild builds\msvc\msvc.sln /p:Configuration=Release |
| | 153 | msbuild builds\msvc\msvc.sln /p:Configuration=Debug |
| | 154 | }}} |
| | 155 | |
| | 156 | === Google break pad === |
| | 157 | |
| | 158 | TODO |
| 97 | | Download and open solution in visual studio. |
| 98 | | '''NOTICE''' You need to switch from dynamic linking to static linking. |
| 99 | | Then build w32 release and debug builds and run the following from the protocol buffer root folder: |
| 100 | | {{{ |
| 101 | | # Build debug w32 (from visual studio) then do the following: |
| 102 | | copy /y vsprojects\Debug\libprotobuf.lib %TARGET_LIB_x86_DIR%\debug-libprotobuf.lib |
| 103 | | copy /y vsprojects\Debug\libprotobuf-lite.lib %TARGET_LIB_x86_DIR%\debug-libprotobuf-lite.lib |
| 104 | | copy /y vsprojects\Debug\libprotoc.lib %TARGET_LIB_x86_DIR%\debug-libprotoc.lib |
| 105 | | |
| 106 | | # Build release w32 (from visual studio) then do the following: |
| 107 | | copy /y vsprojects\Release\libprotobuf.lib %TARGET_LIB_x86_DIR%\libprotobuf.lib |
| 108 | | copy /y vsprojects\Release\libprotobuf-lite.lib %TARGET_LIB_x86_DIR%\libprotobuf-lite.lib |
| 109 | | copy /y vsprojects\Release\libprotoc.lib %TARGET_LIB_x86_DIR%\libprotoc.lib |
| 110 | | |
| 111 | | # Build debug x64 (from visual studio) then do the following: |
| 112 | | copy /y vsprojects\x64\Debug\libprotobuf.lib %TARGET_LIB_x64_DIR%\debug-libprotobuf.lib |
| 113 | | copy /y vsprojects\x64\Debug\libprotobuf-lite.lib %TARGET_LIB_x64_DIR%\debug-libprotobuf-lite.lib |
| 114 | | copy /y vsprojects\x64\Debug\libprotoc.lib %TARGET_LIB_x64_DIR%\debug-libprotoc.lib |
| 115 | | |
| 116 | | # Build release x64 (from visual studio) then do the following: |
| 117 | | copy /y vsprojects\x64\Release\libprotobuf.lib %TARGET_LIB_x64_DIR%\libprotobuf.lib |
| 118 | | copy /y vsprojects\x64\Release\libprotobuf-lite.lib %TARGET_LIB_x64_DIR%\libprotobuf-lite.lib |
| 119 | | copy /y vsprojects\x64\Release\libprotoc.lib %TARGET_LIB_x64_DIR%\libprotoc.lib |
| 120 | | |
| 121 | | # copy /y the compilter of your choice: |
| 122 | | copy /y vsprojects\x64\Release\protoc.exe %TOOLS_DIR% |
| 123 | | # copy /y vsprojects\Release\protoc.exe %TOOLS_DIR% |
| 124 | | }}} |
| 125 | | |
| 126 | | == Gooogle breakpad == |
| 127 | | Go to the main source directory and create the visual studio project files: |
| 128 | | {{{ |
| 129 | | src\tools\gyp\gyp.bat src\client\windows\breakpad_client.gyp |
| 130 | | }}} |
| 131 | | Then open them and build all versions (x86). |
| 132 | | |
| 133 | | Finally copy the following files: |
| 134 | | {{{ |
| 135 | | copy /y src\client\windows\Debug\lib\common.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-common.lib |
| 136 | | copy /y src\client\windows\Debug\lib\crash_generation_client.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-crash_generation_client.lib |
| 137 | | copy /y src\client\windows\Debug\lib\crash_generation_server.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-crash_generation_server.lib |
| 138 | | copy /y src\client\windows\Debug\lib\crash_report_sender.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-crash_report_sender.lib |
| 139 | | copy /y src\client\windows\Debug\lib\exception_handler.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-exception_handler.lib |
| 140 | | copy /y src\client\windows\Debug\lib\gmock.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-gmock.lib |
| 141 | | copy /y src\client\windows\Debug\lib\gtest.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-gtest.lib |
| 142 | | copy /y src\client\windows\Debug\lib\processor_bits.lib %TARGET_LIB_x86_DIR%\debug-google-breakpad-processor_bits.lib |
| 143 | | |
| 144 | | copy /y src\client\windows\Release\lib\common.lib %TARGET_LIB_x86_DIR%\google-breakpad-common.lib |
| 145 | | copy /y src\client\windows\Release\lib\crash_generation_client.lib %TARGET_LIB_x86_DIR%\google-breakpad-crash_generation_client.lib |
| 146 | | copy /y src\client\windows\Release\lib\crash_generation_server.lib %TARGET_LIB_x86_DIR%\google-breakpad-crash_generation_server.lib |
| 147 | | copy /y src\client\windows\Release\lib\crash_report_sender.lib %TARGET_LIB_x86_DIR%\google-breakpad-crash_report_sender.lib |
| 148 | | copy /y src\client\windows\Release\lib\exception_handler.lib %TARGET_LIB_x86_DIR%\google-breakpad-exception_handler.lib |
| 149 | | copy /y src\client\windows\Release\lib\gmock.lib %TARGET_LIB_x86_DIR%\google-breakpad-gmock.lib |
| 150 | | copy /y src\client\windows\Release\lib\gtest.lib %TARGET_LIB_x86_DIR%\google-breakpad-gtest.lib |
| 151 | | copy /y src\client\windows\Release\lib\processor_bits.lib %TARGET_LIB_x86_DIR%\google-breakpad-processor_bits.lib |
| 152 | | }}} |
| 153 | | |
| 154 | | |
| 155 | | Then open them and build all versions (x64). |
| 156 | | |
| 157 | | {{{ |
| 158 | | copy /y src\client\windows\Debug\lib\common.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-common.lib |
| 159 | | copy /y src\client\windows\Debug\lib\crash_generation_client.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-crash_generation_client.lib |
| 160 | | copy /y src\client\windows\Debug\lib\crash_generation_server.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-crash_generation_server.lib |
| 161 | | copy /y src\client\windows\Debug\lib\crash_report_sender.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-crash_report_sender.lib |
| 162 | | copy /y src\client\windows\Debug\lib\exception_handler.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-exception_handler.lib |
| 163 | | copy /y src\client\windows\Debug\lib\gmock.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-gmock.lib |
| 164 | | copy /y src\client\windows\Debug\lib\gtest.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-gtest.lib |
| 165 | | copy /y src\client\windows\Debug\lib\processor_bits.lib %TARGET_LIB_x64_DIR%\debug-google-breakpad-processor_bits.lib |
| 166 | | |
| 167 | | copy /y src\client\windows\Release\lib\common.lib %TARGET_LIB_x64_DIR%\google-breakpad-common.lib |
| 168 | | copy /y src\client\windows\Release\lib\crash_generation_client.lib %TARGET_LIB_x64_DIR%\google-breakpad-crash_generation_client.lib |
| 169 | | copy /y src\client\windows\Release\lib\crash_generation_server.lib %TARGET_LIB_x64_DIR%\google-breakpad-crash_generation_server.lib |
| 170 | | copy /y src\client\windows\Release\lib\crash_report_sender.lib %TARGET_LIB_x64_DIR%\google-breakpad-crash_report_sender.lib |
| 171 | | copy /y src\client\windows\Release\lib\exception_handler.lib %TARGET_LIB_x64_DIR%\google-breakpad-exception_handler.lib |
| 172 | | copy /y src\client\windows\Release\lib\gmock.lib %TARGET_LIB_x64_DIR%\google-breakpad-gmock.lib |
| 173 | | copy /y src\client\windows\Release\lib\gtest.lib %TARGET_LIB_x64_DIR%\google-breakpad-gtest.lib |
| 174 | | copy /y src\client\windows\Release\lib\processor_bits.lib %TARGET_LIB_x64_DIR%\google-breakpad-processor_bits.lib |
| 175 | | }}} |
| | 174 | TODO |