Mercurial > archived > louis > epitech > mq > rathaxes
comparison maintainers_refactor_the_build_system_to_allow_standalone_rathaxes_projects_with_cmake.patch @ 55:b2fe898b6957
Get RATHAXES_PATH from the registry and allow the installer to add rathaxes in the PATH
author | Louis Opter <kalessin@kalessin.fr> |
---|---|
date | Fri, 27 Jan 2012 20:12:21 +0100 |
parents | 1f78508dbaa2 |
children | 37d5953fc236 |
comparison
equal
deleted
inserted
replaced
54:1f78508dbaa2 | 55:b2fe898b6957 |
---|---|
45 -ENDIF (CMAKE_COMPILER_IS_GNUCC) | 45 -ENDIF (CMAKE_COMPILER_IS_GNUCC) |
46 - | 46 - |
47 # Subdirectories ############################################################### | 47 # Subdirectories ############################################################### |
48 | 48 |
49 IF (PDFLATEX_COMPILER AND PS2PDF_CONVERTER) | 49 IF (PDFLATEX_COMPILER AND PS2PDF_CONVERTER) |
50 @@ -87,7 +77,7 @@ | 50 @@ -60,7 +50,6 @@ |
51 MESSAGE(STATUS "ps2pdf (shipped with ghostscript) and pdflatex needed to generate documentation.") | |
52 ENDIF (PDFLATEX_COMPILER AND PS2PDF_CONVERTER) | |
53 | |
54 -ADD_SUBDIRECTORY(maintainers) | |
55 ADD_SUBDIRECTORY(rathaxes) | |
56 | |
57 # Install rules ################################################################ | |
58 @@ -87,7 +76,7 @@ | |
51 SET(PACKAGE_NAME "rathaxes") | 59 SET(PACKAGE_NAME "rathaxes") |
52 SET(IGNORE_PATTERNS | 60 SET(IGNORE_PATTERNS |
53 "/\\\\.hg.*" | 61 "/\\\\.hg.*" |
54 - ".*\\\\.sw.?$" | 62 - ".*\\\\.sw.?$" |
55 + ".*\\\\.sw.$" | 63 + ".*\\\\.sw.$" |
56 "/CMakeFiles/" | 64 "/CMakeFiles/" |
57 "CMakeCache.txt" | 65 "CMakeCache.txt" |
58 ".*install.*\\\\.(cmake|txt)$" | 66 ".*install.*\\\\.(cmake|txt)$" |
67 @@ -95,6 +84,8 @@ | |
68 ".*CPack.*([^t][^x][^t])$" | |
69 "/Test_.*/" | |
70 "/build/" | |
71 + ".*\\\\.r?tree$" | |
72 + ".*\\\\.pp$" | |
73 # delete some legacy stuff and save some space: | |
74 "/management/" | |
75 "/epitech/2009/" | |
76 @@ -110,7 +101,7 @@ | |
77 SET(CPACK_PACKAGE_DESCRIPTION_FILE "${RATHAXES_SOURCE_DIR}/maintainers/CMakeScripts/CPackDescription.txt") | |
78 SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Rathaxes, the cross-platform driver generator.") | |
79 SET(CPACK_PACKAGE_INSTALL_DIRECTORY ${PACKAGE_FILE_NAME}) | |
80 -SET(CPACK_PACKAGE_VENDOR "Rathaxes Team") | |
81 +SET(CPACK_PACKAGE_VENDOR "Rathaxes") | |
82 | |
83 SET(CPACK_SOURCE_PACKAGE_FILE_NAME ${PACKAGE_SOURCE_FILE_NAME}) | |
84 SET(CPACK_SOURCE_IGNORE_FILES ${IGNORE_PATTERNS}) | |
85 @@ -125,9 +116,11 @@ | |
86 ENDIF (UNIX) | |
87 | |
88 IF (WIN32) | |
89 - SET(CPACK_NSIS_CREATE_ICONS_EXTRA "CreateShortCut '\$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Rathaxes.lnk' '%comspec%' '/k bin\\\\rathaxesvars.bat'") | |
90 SET(CPACK_GENERATOR "NSIS") | |
91 SET(CPACK_SOURCE_GENERATOR "ZIP") | |
92 + SET(CPACK_NSIS_MODIFY_PATH ON) | |
93 ENDIF (WIN32) | |
94 | |
95 +ADD_SUBDIRECTORY(maintainers) | |
96 + | |
97 INCLUDE(CPack) | |
59 diff --git a/maintainers/CMakeLists.txt b/maintainers/CMakeLists.txt | 98 diff --git a/maintainers/CMakeLists.txt b/maintainers/CMakeLists.txt |
60 --- a/maintainers/CMakeLists.txt | 99 --- a/maintainers/CMakeLists.txt |
61 +++ b/maintainers/CMakeLists.txt | 100 +++ b/maintainers/CMakeLists.txt |
62 @@ -10,6 +10,10 @@ | 101 @@ -10,6 +10,10 @@ |
63 INSTALL(PROGRAMS ${CODEWORKER_BINARY_PATH} | 102 INSTALL(PROGRAMS ${CODEWORKER_BINARY_PATH} |
280 + SET(CMAKE_C_FLAGS "-pipe -Wextra -Wall -std=c99") | 319 + SET(CMAKE_C_FLAGS "-pipe -Wextra -Wall -std=c99") |
281 +ENDIF (CMAKE_COMPILER_IS_GNUCC) | 320 +ENDIF (CMAKE_COMPILER_IS_GNUCC) |
282 diff --git a/maintainers/bin/CMakeLists.txt b/maintainers/bin/CMakeLists.txt | 321 diff --git a/maintainers/bin/CMakeLists.txt b/maintainers/bin/CMakeLists.txt |
283 --- a/maintainers/bin/CMakeLists.txt | 322 --- a/maintainers/bin/CMakeLists.txt |
284 +++ b/maintainers/bin/CMakeLists.txt | 323 +++ b/maintainers/bin/CMakeLists.txt |
285 @@ -19,7 +19,7 @@ | 324 @@ -10,16 +10,14 @@ |
325 # On windows you have to use relative paths and install the proper | |
326 # shortcut using nsis. | |
327 SET(PATH_PREFIX "") | |
328 - SET(RATHAXES_SCRIPT_NAME "rathaxesvars.bat") | |
329 - | |
330 - INSTALL(PROGRAMS "${CMAKE_CURRENT_SOURCE_DIR}/rathaxes.bat" DESTINATION bin) | |
331 + SET(RATHAXES_SCRIPT_NAME "rathaxes.bat") | |
332 ELSE (WIN32) | |
333 SET(PATH_PREFIX "${CMAKE_INSTALL_PREFIX}") | |
334 SET(RATHAXES_SCRIPT_NAME "rathaxes") | |
286 ENDIF (WIN32) | 335 ENDIF (WIN32) |
287 | 336 |
288 SET(CNORM_PATH "${PATH_PREFIX}/lib/rathaxes/cnorm/") | 337 SET(CNORM_PATH "${PATH_PREFIX}/lib/rathaxes/cnorm/") |
289 -SET(COMPILER_PATH "${PATH_PREFIX}/lib/rathaxes/compiler/") | 338 -SET(COMPILER_PATH "${PATH_PREFIX}/lib/rathaxes/compiler/") |
290 +SET(RATHAXES_LIB "${PATH_PREFIX}/lib/rathaxes") | 339 +SET(RATHAXES_LIB "${PATH_PREFIX}/lib/rathaxes") |
291 SET(CODEWORKER_PATH "${PATH_PREFIX}/lib/rathaxes/codeworker${CMAKE_EXECUTABLE_SUFFIX}") | 340 SET(CODEWORKER_PATH "${PATH_PREFIX}/lib/rathaxes/codeworker${CMAKE_EXECUTABLE_SUFFIX}") |
292 | 341 |
293 CONFIGURE_FILE("${RATHAXES_SCRIPT_NAME}.in" "${RATHAXES_SCRIPT_NAME}" @ONLY) | 342 CONFIGURE_FILE("${RATHAXES_SCRIPT_NAME}.in" "${RATHAXES_SCRIPT_NAME}" @ONLY) |
294 diff --git a/maintainers/bin/rathaxes.bat b/maintainers/bin/rathaxes.bat | 343 diff --git a/maintainers/bin/rathaxes.bat b/maintainers/bin/rathaxes.bat.in |
344 rename from maintainers/bin/rathaxes.bat | |
345 rename to maintainers/bin/rathaxes.bat.in | |
295 --- a/maintainers/bin/rathaxes.bat | 346 --- a/maintainers/bin/rathaxes.bat |
296 +++ b/maintainers/bin/rathaxes.bat | 347 +++ b/maintainers/bin/rathaxes.bat.in |
297 @@ -1,6 +1,3 @@ | 348 @@ -1,6 +1,18 @@ |
298 @echo off | 349 @echo off |
299 | 350 |
300 -rem We have to explicitely give the path of the script as the first argument on | 351 -rem We have to explicitely give the path of the script as the first argument on |
301 -rem Windows. | 352 -rem Windows. |
302 - | 353 +for /f "tokens=2,*" %%a in ('reg query HKLM\Software\@CPACK_PACKAGE_VENDOR@\@CPACK_PACKAGE_NAME@ /ve ^| findstr "(Default)"') do set RATHAXES_PATH=%%b |
354 | |
303 -%CODEWORKER% --quiet %INCLUDE_PATHS% -script %COMPILER_PATH%/rathaxes.cws -args %COMPILER_PATH%/rathaxes.cws %LOCAL_CACHE_PATH% %* | 355 -%CODEWORKER% --quiet %INCLUDE_PATHS% -script %COMPILER_PATH%/rathaxes.cws -args %COMPILER_PATH%/rathaxes.cws %LOCAL_CACHE_PATH% %* |
356 +rem This variable is simply used as a shortcut to the Rathaxes install | |
357 +rem directory (since we never know where it can be on Windows). Useful to | |
358 +rem specify some paths in the documentation. This is also used by the | |
359 +rem FindCodeWorker CMake finder. | |
360 +set CNORM_PATH="%RATHAXES_PATH%@CNORM_PATH@" | |
361 +set RATHAXES_LIB="%RATHAXES_PATH%@RATHAXES_LIB@" | |
362 +set COMPILER_PATH="%RATHAXES_PATH%@RATHAXES_LIB@/compiler" | |
363 +set LOCAL_CACHE_PATH="%LOCALAPPDATA%\\Rathaxes\\cache\\" | |
364 + | |
365 +set INCLUDE_PATHS=-I %CNORM_PATH% -I %COMPILER_PATH% | |
366 + | |
367 +set CODEWORKER="%RATHAXES_PATH%@CODEWORKER_PATH@" | |
368 + | |
304 +%CODEWORKER% --quiet %INCLUDE_PATHS% -script %COMPILER_PATH%/rathaxes.cws -args %RATHAXES_LIB% %LOCAL_CACHE_PATH% %* | 369 +%CODEWORKER% --quiet %INCLUDE_PATHS% -script %COMPILER_PATH%/rathaxes.cws -args %RATHAXES_LIB% %LOCAL_CACHE_PATH% %* |
305 diff --git a/maintainers/bin/rathaxes.in b/maintainers/bin/rathaxes.in | 370 diff --git a/maintainers/bin/rathaxes.in b/maintainers/bin/rathaxes.in |
306 --- a/maintainers/bin/rathaxes.in | 371 --- a/maintainers/bin/rathaxes.in |
307 +++ b/maintainers/bin/rathaxes.in | 372 +++ b/maintainers/bin/rathaxes.in |
308 @@ -1,10 +1,11 @@ | 373 @@ -1,10 +1,11 @@ |
318 | 383 |
319 exec @CODEWORKER_PATH@ --quiet $INCLUDE_PATHS \ | 384 exec @CODEWORKER_PATH@ --quiet $INCLUDE_PATHS \ |
320 - -script $COMPILER_PATH/rathaxes.cws -args $COMPILER_PATH $LOCAL_CACHE_PATH $* | 385 - -script $COMPILER_PATH/rathaxes.cws -args $COMPILER_PATH $LOCAL_CACHE_PATH $* |
321 + -script $COMPILER_PATH/rathaxes.cws -args $RATHAXES_LIB $LOCAL_CACHE_PATH $* | 386 + -script $COMPILER_PATH/rathaxes.cws -args $RATHAXES_LIB $LOCAL_CACHE_PATH $* |
322 diff --git a/maintainers/bin/rathaxesvars.bat.in b/maintainers/bin/rathaxesvars.bat.in | 387 diff --git a/maintainers/bin/rathaxesvars.bat.in b/maintainers/bin/rathaxesvars.bat.in |
388 deleted file mode 100644 | |
323 --- a/maintainers/bin/rathaxesvars.bat.in | 389 --- a/maintainers/bin/rathaxesvars.bat.in |
324 +++ b/maintainers/bin/rathaxesvars.bat.in | 390 +++ /dev/null |
325 @@ -2,8 +2,14 @@ | 391 @@ -1,15 +0,0 @@ |
326 | 392 -@echo off |
327 echo -- Setting up the Rathaxes environment | 393 - |
328 | 394 -echo -- Setting up the Rathaxes environment |
329 +rem This variable is simply used as a shortcut to the Rathaxes install | 395 - |
330 +rem directory (since we never know where it can be on Windows). Useful to | 396 -set CNORM_PATH="%CD%@CNORM_PATH@" |
331 +rem specify some paths in the documentation. This is also used by the | |
332 +rem FindCodeWorker CMake finder. | |
333 +set RATHAXES_PATH=%CD% | |
334 set CNORM_PATH="%CD%@CNORM_PATH@" | |
335 -set COMPILER_PATH="%CD%@COMPILER_PATH@" | 397 -set COMPILER_PATH="%CD%@COMPILER_PATH@" |
336 +set RATHAXES_LIB="%CD%@RATHAXES_LIB@" | 398 -set LOCAL_CACHE_PATH="%LOCALAPPDATA%\\Rathaxes\\cache\\" |
337 +set COMPILER_PATH="%CD%@RATHAXES_LIB@/compiler" | 399 - |
338 set LOCAL_CACHE_PATH="%LOCALAPPDATA%\\Rathaxes\\cache\\" | 400 -set INCLUDE_PATHS=-I %CNORM_PATH% -I %COMPILER_PATH% |
339 | 401 - |
340 set INCLUDE_PATHS=-I %CNORM_PATH% -I %COMPILER_PATH% | 402 -set CODEWORKER="%CD%@CODEWORKER_PATH@" |
403 - | |
404 -echo -- Adding Rathaxes to the search path | |
405 - | |
406 -set PATH=%CD%/bin;%PATH% | |
341 diff --git a/rathaxes/CMakeLists.txt b/rathaxes/CMakeLists.txt | 407 diff --git a/rathaxes/CMakeLists.txt b/rathaxes/CMakeLists.txt |
342 --- a/rathaxes/CMakeLists.txt | 408 --- a/rathaxes/CMakeLists.txt |
343 +++ b/rathaxes/CMakeLists.txt | 409 +++ b/rathaxes/CMakeLists.txt |
344 @@ -26,4 +26,17 @@ | 410 @@ -26,4 +26,17 @@ |
345 | 411 |