]> Creatis software - crea.git/blob - appli/creaNewProject/CMakeLists.txt
add previous authors
[crea.git] / appli / creaNewProject / CMakeLists.txt
1 # ---------------------------------------------------------------------
2 #
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image 
4 #                        pour la Santé)
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
8 #
9 #  This software is governed by the CeCILL-B license under French law and 
10 #  abiding by the rules of distribution of free software. You can  use, 
11 #  modify and/ or redistribute the software under the terms of the CeCILL-B 
12 #  license as circulated by CEA, CNRS and INRIA at the following URL 
13 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
14 #  or in the file LICENSE.txt.
15 #
16 #  As a counterpart to the access to the source code and  rights to copy,
17 #  modify and redistribute granted by the license, users are provided only
18 #  with a limited warranty  and the software's author,  the holder of the
19 #  economic rights,  and the successive licensors  have only  limited
20 #  liability. 
21 #
22 #  The fact that you are presently reading this means that you have had
23 #  knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */ 
25
26 #============================================================================
27 # Builds and install the executable creaNewProject
28
29 SET(EXE_NAME creaNewProject)
30 SET(${EXE_NAME}_SOURCES creaNewProject.cpp)
31 SET(${EXE_NAME}_HAS_GUI TRUE)
32 SET(${EXE_NAME}_CONSOLE FALSE)
33 SET(${EXE_NAME}_LINK_LIBRARIES crea)
34
35 CREA_ADD_EXECUTABLE( ${EXE_NAME} )
36 #============================================================================
37
38
39 #============================================================================
40 # Installs creaNewProject.bat/.sh  
41 # used to creates the file architecture for a new project
42 # and configures/installs the empty project structure used by creaNewProject
43 SET(INPUT_PROJECT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/NewProject)
44
45 IF(WIN32)
46
47   # Build tree 
48   CONFIGURE_FILE(
49     ${CMAKE_CURRENT_SOURCE_DIR}/xcopy.exe
50     ${EXECUTABLE_OUTPUT_PATH}/Debug/xcopy.exe
51     COPYONLY 
52     )
53   CONFIGURE_FILE(
54     ${CMAKE_CURRENT_SOURCE_DIR}/creaNewProject.bat.in
55     ${EXECUTABLE_OUTPUT_PATH}/Debug/creaNewProject.bat
56     @ONLY IMMEDIATE
57     )
58          
59   CONFIGURE_FILE(
60     ${CMAKE_CURRENT_SOURCE_DIR}/NewProject/lib/template_lib/creaSystem.h.in
61     ${EXECUTABLE_OUTPUT_PATH}/lib/template_lib/${PROJECT_NAME}System.h
62     @ONLY IMMEDIATE
63     )
64       
65   CREA_MKDIR(${EXECUTABLE_OUTPUT_PATH}/Debug/creaNewProject_data)
66   CREA_CPDIR(${INPUT_PROJECT_DIR} ${EXECUTABLE_OUTPUT_PATH}/Debug/creaNewProject_data )
67   
68
69   CONFIGURE_FILE(
70     ${CMAKE_CURRENT_SOURCE_DIR}/xcopy.exe
71     ${EXECUTABLE_OUTPUT_PATH}/Release/xcopy.exe
72     COPYONLY 
73     )
74   CONFIGURE_FILE(
75     ${CMAKE_CURRENT_SOURCE_DIR}/creaNewProject.bat.in
76     ${EXECUTABLE_OUTPUT_PATH}/Release/creaNewProject.bat
77     @ONLY IMMEDIATE
78     )
79   CREA_MKDIR(${EXECUTABLE_OUTPUT_PATH}/Release/creaNewProject_data)
80   CREA_CPDIR(${INPUT_PROJECT_DIR} ${EXECUTABLE_OUTPUT_PATH}/Release/creaNewProject_data )
81   
82   
83   # install tree
84   INSTALL(
85     PROGRAMS ${EXECUTABLE_OUTPUT_PATH}/Debug/xcopy.exe
86     DESTINATION bin
87     )
88   INSTALL(
89     PROGRAMS ${EXECUTABLE_OUTPUT_PATH}/Debug/creaNewProject.bat
90     DESTINATION bin
91     )
92   INSTALL( 
93     DIRECTORY ${EXECUTABLE_OUTPUT_PATH}/Debug/creaNewProject_data
94     DESTINATION bin
95     )  
96   
97 ELSE(WIN32)
98
99 # ======================= LINUX =======================
100
101   # Build tree 
102   CONFIGURE_FILE(
103     ${CMAKE_CURRENT_SOURCE_DIR}/creaNewProject.sh.in
104     ${EXECUTABLE_OUTPUT_PATH}/creaNewProject.sh
105     @ONLY IMMEDIATE
106     )
107   
108  # CONFIGURE_FILE(
109  #   ${CMAKE_CURRENT_SOURCE_DIR}/NewProject/lib/template_lib/creaSystem.h.in
110  #   ${EXECUTABLE_OUTPUT_PATH}/NewProject/lib/template_lib/${PROJECT_NAME}System.h
111  #   ${CMAKE_CURRENT_SOURCE_DIR}/NewProject/lib/template_lib/${PROJECT_NAME}System.h
112  #   @ONLY IMMEDIATE
113  #   )
114
115   CREA_MKDIR(${EXECUTABLE_OUTPUT_PATH}/share/creaNewProject)
116   CREA_CPDIR(${INPUT_PROJECT_DIR} ${EXECUTABLE_OUTPUT_PATH}/share/creaNewProject)
117
118   # Install tree
119   INSTALL(
120     FILES ${EXECUTABLE_OUTPUT_PATH}/creaNewProject.sh
121     DESTINATION bin
122     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
123     )
124
125   INSTALL(
126     DIRECTORY ${EXECUTABLE_OUTPUT_PATH}/share/creaNewProject
127     DESTINATION share
128     )
129   
130 ENDIF(WIN32)
131
132
133
134