| 174 | Note: Actually, it is manually build from this file: https://docs.google.com/spreadsheets/d/1Dem6RYkokaX61N8VcomebtqZvcUP-OOt14jt6GPL2TY/edit#gid=2122109332 |
| 175 | |
| 176 | To add a project or update project version, modify the projects_csv file: https://github.com/<PATH TO FILE>/projects_info.csv |
| 177 | |
| 178 | Please indicate if there is a quickstart or not, an overview or not, an openHub account or not, the version, if it is an OSGeo project, or community or none of those. |
| 179 | |
| 180 | Overviews will be generated with the data from {{{projects_info.csv}}}, and links to quickstarts will be added automaticly. |
| 181 | |
| 182 | More information how CMake use this file are available above. |
| 183 | |
| 184 | == Debugging == |
| 185 | |
| 186 | There is 2 versions: regular and verbose. |
| 187 | |
| 188 | The first one can be called with this flag: {{{-DOSGeoLiveDoc_DEBUG=ON}}} |
| 189 | |
| 190 | For example: {{{cmake -DHTML=ON -DES=ON -DOSGeoLiveDoc_DEBUG=ON ..}}} |
| 191 | |
| 192 | The verbose debug is called with this flag: {{{-DOSGeoLiveDoc_VERBOSE_DEBUG=ON}}} |
| 193 | |
| 194 | For example: {{{cmake -DHTML=ON -DES=ON -DOSGeoLiveDoc_VERBOSE_DEBUG=ON ..}}} |
| 195 | |
| 196 | == Configuring CMake / Setting the build == |
| 197 | |
| 198 | CMake is use to build the repository instead of simply make because it can be finely tuned. CMake configuration is done by the {{{CMakeLists.txt}}}. CMake says how the build is made from that file. |
| 199 | |
| 200 | This file allows to set a few things: |
| 201 | |
| 202 | ==== Checking CMake version ==== |
| 203 | |
| 204 | {{{cmake_minimum_required(VERSION 2.8 FATAL_ERROR)}}} |
| 205 | |
| 206 | ==== Checking build folder ==== |
| 207 | |
| 208 | The first thing that CMake does is to check if you are in the folder called {{{build}}}. If it is not the case, CMake will return an error. |
| 209 | |
| 210 | {{{ |
| 211 | if ( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} ) |
| 212 | message(FATAL_ERROR "In-source builds not allowed. |
| 213 | Please make a new directory (called a build directory) and run CMake from there. |
| 214 | You may need to remove CMakeCache.txt." ) |
| 215 | endif() |
| 216 | }}} |
| 217 | |
| 218 | ==== Changing the version number ==== |
| 219 | |
| 220 | In {{{CMakeLists.txt}}}, you can change the OSGeo-Live version number with the following variables: |
| 221 | |
| 222 | {{{ |
| 223 | ## Major version |
| 224 | set(OSGeoLiveDoc_VERSION_MAJOR "12") |
| 225 | |
| 226 | ## minor version |
| 227 | set(OSGeoLiveDoc_VERSION_MINOR "0") |
| 228 | |
| 229 | ## Patch number |
| 230 | set(OSGeoLiveDoc_VERSION_PATCH "0") |
| 231 | |
| 232 | ## if it is a development version, a Release Candidate or a final release |
| 233 | set(OSGeoLiveDoc_VERSION_DEV "-dev") |
| 234 | }}} |
| 235 | ==== Checking the sphinx version ==== |
| 236 | |
| 237 | To build, you sphinx 1.1 and above: |
| 238 | |
| 239 | {{{set(SPHINX_MINIMUM_VERSION "1.1")}}} |
| 240 | |
| 241 | If not a warning will be displayed. If you need a more recent version to build the doc, you can test it from here. |
| 242 | |
| 243 | ==== Checking Perl ==== |
| 244 | |
| 245 | Perl is needed at some point, so |
| 246 | |
| 247 | ==== Adding / removing a language ==== |
| 248 | |
| 249 | Add the 2 letters code of the new language: |
| 250 | |
| 251 | {{{set(OSGeoLiveDoc_SUPPORTED_LANGUAGES "ca" "de" "es" "fr" "it" "ja" "ko" "pl" "ru")}}} |
| 252 | Then add a new {{{INSERT_INTO_MAP}}} command to add the language to the lang navigation bar (in {{{index.html}}}). For example: |
| 253 | |
| 254 | {{{INSERT_INTO_MAP("fr" "Français")}}} in the {{{CMakeLists.txt}}}. |
| 255 | |
| 256 | The line {{{set(OSGeoLiveDoc_ENGLISH "en")}}} is not supposed to change, it sets the default build in english. |
| 257 | |
| 258 | === Projects management === |
| 259 | |
| 260 | Projects are loaded from the {{{projects_info.csv}}} file. It is the main entry point. |
| 261 | |
182 | | More information how CMake use this file are available above. |
183 | | |
184 | | == Debugging == |
185 | | |
186 | | There is 2 versions: regular and verbose. |
187 | | |
188 | | The first one can be called with this flag: {{{-DOSGeoLiveDoc_DEBUG=ON}}} |
189 | | |
190 | | For example: {{{cmake -DHTML=ON -DES=ON -DOSGeoLiveDoc_DEBUG=ON ..}}} |
191 | | |
192 | | The verbose debug is called with this flag: {{{-DOSGeoLiveDoc_VERBOSE_DEBUG=ON}}} |
193 | | |
194 | | For example: {{{cmake -DHTML=ON -DES=ON -DOSGeoLiveDoc_VERBOSE_DEBUG=ON ..}}} |
195 | | |
196 | | == Configuring CMake / Setting the build == |
197 | | |
198 | | CMake is use to build the repository instead of simply make because it can be finely tuned. CMake configuration is done by the {{{CMakeLists.txt}}}. CMake says how the build is made from that file. |
199 | | |
200 | | This file allows to set a few things: |
201 | | |
202 | | ==== Checking CMake version ==== |
203 | | |
204 | | {{{cmake_minimum_required(VERSION 2.8 FATAL_ERROR)}}} |
205 | | |
206 | | ==== Checking build folder ==== |
207 | | |
208 | | The first thing that CMake does is to check if you are in the folder called {{{build}}}. If it is not the case, CMake will return an error. |
209 | | |
210 | | {{{if ( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} ) |
211 | | message(FATAL_ERROR "In-source builds not allowed. |
212 | | Please make a new directory (called a build directory) and run CMake from there. |
213 | | You may need to remove CMakeCache.txt." ) |
214 | | endif()}}} |
215 | | ==== Changing the version number ==== |
216 | | |
217 | | In {{{CMakeLists.txt}}}, you can change the OSGeo-Live version number with the following variables: |
218 | | |
219 | | {{{## Major version |
220 | | set(OSGeoLiveDoc_VERSION_MAJOR "12") |
221 | | |
222 | | ## minor version |
223 | | set(OSGeoLiveDoc_VERSION_MINOR "0") |
224 | | |
225 | | ## Patch number |
226 | | set(OSGeoLiveDoc_VERSION_PATCH "0") |
227 | | |
228 | | ## if it is a development version, a Release Candidate or a final release |
229 | | set(OSGeoLiveDoc_VERSION_DEV "-dev")}}} |
230 | | ==== Checking the sphinx version ==== |
231 | | |
232 | | To build, you sphinx 1.1 and above: |
233 | | |
234 | | {{{set(SPHINX_MINIMUM_VERSION "1.1")}}} |
235 | | |
236 | | If not a warning will be displayed. If you need a more recent version to build the doc, you can test it from here. |
237 | | |
238 | | ==== Checking Perl ==== |
239 | | |
240 | | Perl is needed at some point, so |
241 | | |
242 | | ==== Adding / removing a language ==== |
243 | | |
244 | | Add the 2 letters code of the new language: |
245 | | |
246 | | {{{set(OSGeoLiveDoc_SUPPORTED_LANGUAGES "ca" "de" "es" "fr" "it" "ja" "ko" "pl" "ru")}}} |
247 | | Then add a new {{{INSERT_INTO_MAP}}} command to add the language to the lang navigation bar (in {{{index.html}}}). For example: |
248 | | |
249 | | {{{INSERT_INTO_MAP("fr" "Français")}}} in the {{{CMakeLists.txt}}}. |
250 | | |
251 | | The line {{{set(OSGeoLiveDoc_ENGLISH "en")}}} is not supposed to change, it sets the default build in english. |
252 | | |
253 | | === Projects management === |
254 | | |
255 | | Projects are loaded from the {{{projects_info.csv}}} file. It is the main entry point. |
256 | | |
257 | | <blockquote>Note: Actually, it is manually build from this file: https://docs.google.com/spreadsheets/d/1Dem6RYkokaX61N8VcomebtqZvcUP-OOt14jt6GPL2TY/edit#gid=2122109332 |
258 | | </blockquote> |
259 | | To add a project or update project version, modify the projects_csv file: https://github.com/<PATH TO FILE>/projects_info.csv |
260 | | |
261 | | Please indicate there is a quickstart or not, an overview or not, an openHub account or not, the version, if it is an OSGeo project, or community or none of those. |
262 | | |
263 | | Overviews will be generated with the data from {{{projects_info.csv}}}, and links to quickstarts will be added automaticly. |
264 | | |