Salome HOME
modif pour MT
[tools/eficas.git] / UiQT5 / CMakeLists.txt
1 # -*- coding: utf-8 -*-
2 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3 # ======================================================================
4 # COPYRIGHT (C) 1991 - 2002, 2013  EDF R&D                  WWW.CODE-ASTER.ORG
5 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
8 # (AT YOUR OPTION) ANY LATER VERSION.
9 #
10 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
11 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
12 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
13 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
14 #
15 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
16 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
17 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
18 #
19 #
20 # ======================================================================
21
22 set ( _PYFILES )
23 macro ( eficas_compile_ui uifile )
24   get_filename_component ( _file_we ${uifile} NAME_WE )
25   set ( _pyfile "${_file_we}.py" )
26   add_custom_command ( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile}
27                        COMMAND ${PYUIC5} ARGS -x -o ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ${CMAKE_CURRENT_SOURCE_DIR}/${uifile}
28                        MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${uifile}
29                        COMMENT "Compiling ${uifile}"
30                      )
31   list ( APPEND _PYFILES ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} )
32 endmacro ( eficas_compile_ui )
33
34 macro ( eficas_compile_ui_2 uifile )
35   get_filename_component ( _file_we ${uifile} NAME_WE )
36   set ( _pyfile "${_file_we}.py" )
37   add_custom_command ( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile}
38                        COMMAND ${PYUIC5} ARGS -x -o ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} ${CMAKE_CURRENT_SOURCE_DIR}/${uifile}
39                        COMMAND sed -i -e "'s/\\(QtCore\\.QMetaObject\\.connectSlotsByName(WidgetFactPlie)\\)/#\\1/'" ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile}
40                        MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${uifile}
41                        COMMENT "Compiling ${uifile}"
42                      )
43   list ( APPEND _PYFILES ${CMAKE_CURRENT_BINARY_DIR}/${_pyfile} )
44 endmacro ( eficas_compile_ui_2 )
45
46 eficas_compile_ui ( myMain.ui )
47 eficas_compile_ui ( desBaseWidget.ui )
48 eficas_compile_ui ( desChoixCata.ui )
49 eficas_compile_ui ( desChoixCode.ui )
50 eficas_compile_ui ( desChoixCommandes.ui )
51 eficas_compile_ui ( desChoixLangue.ui )
52 eficas_compile_ui ( desRecherche.ui )
53 eficas_compile_ui ( desRechercheCatalogue.ui )
54 eficas_compile_ui ( desSelectVal.ui )
55 eficas_compile_ui ( desViewTexte.ui )
56 eficas_compile_ui ( desViewRegles.ui )
57 eficas_compile_ui ( desVisu.ui )
58 eficas_compile_ui ( desWidgetCreeParam.ui )
59 eficas_compile_ui ( desWidgetCommande.ui )
60 eficas_compile_ui ( desWidgetFormule.ui )
61 eficas_compile_ui ( desWidgetOptionnel.ui )
62 eficas_compile_ui ( desGroupeOptionnel.ui )
63 eficas_compile_ui ( Tuple2.ui )
64 eficas_compile_ui ( Tuple3.ui )
65 eficas_compile_ui ( Tuple4.ui )
66 eficas_compile_ui ( Tuple5.ui )
67 eficas_compile_ui ( Tuple6.ui )
68 eficas_compile_ui ( Tuple7.ui )
69 eficas_compile_ui ( Tuple8.ui )
70 eficas_compile_ui ( Tuple9.ui )
71 eficas_compile_ui ( Tuple10.ui )
72 eficas_compile_ui ( desPBOptionnelMT.ui )
73 #
74 eficas_compile_ui ( desWidgetBloc.ui )
75 eficas_compile_ui ( desWidgetCB.ui )
76 eficas_compile_ui ( desWidgetCBIntoSug.ui )
77 eficas_compile_ui ( desWidgetCommentaire.ui )
78 eficas_compile_ui ( desWidgetDate.ui )
79 eficas_compile_ui ( desWidgetFact.ui )
80 eficas_compile_ui ( desWidgetFactPlie.ui )
81 eficas_compile_ui ( desWidgetFactTableau.ui )
82 eficas_compile_ui ( desWidgetHeure.ui )
83 eficas_compile_ui ( desWidgetInactif.ui )
84 eficas_compile_ui ( desWidgetInformation.ui )
85 eficas_compile_ui ( desWidgetIntoSug.ui )
86 eficas_compile_ui ( desWidgetMatrice.ui )
87 eficas_compile_ui ( desWidgetNiveauFact.ui )
88 eficas_compile_ui ( desWidgetParam.ui )
89 eficas_compile_ui ( desWidgetPlusieursBase.ui )
90 eficas_compile_ui ( desWidgetPlusieursInto.ui )
91 eficas_compile_ui ( desWidgetPlusieursIntoOrdonne.ui )
92 eficas_compile_ui ( desWidgetPlusieursTuple.ui )
93 eficas_compile_ui ( desWidgetPlusieursPlie.ui )
94 eficas_compile_ui ( desWidgetRadioButton.ui ) 
95 eficas_compile_ui ( desWidget4a6RadioButton.ui )
96 eficas_compile_ui ( desWidgetSDCOInto.ui )
97 eficas_compile_ui ( desWidgetSimpBase.ui )
98 eficas_compile_ui ( desWidgetSimpBool.ui )
99 eficas_compile_ui ( desWidgetSimpComplexe.ui )
100 eficas_compile_ui ( desWidgetSimpFichier.ui )
101 eficas_compile_ui ( desWidgetSimpSalome.ui )
102 eficas_compile_ui ( desWidgetSimpTxt.ui )
103 eficas_compile_ui ( desWidgetTableau.ui )
104 eficas_compile_ui ( desWidgetTuple2.ui )
105 eficas_compile_ui ( desWidgetTuple3.ui )
106 eficas_compile_ui ( desWidgetTuple4.ui )
107 eficas_compile_ui ( desWidgetTuple5.ui )
108 eficas_compile_ui ( desWidgetTuple6.ui )
109 eficas_compile_ui ( desWidgetTuple7.ui )
110 eficas_compile_ui ( desWidgetTuple8.ui )
111 eficas_compile_ui ( desWidgetTuple9.ui )
112 eficas_compile_ui ( desWidgetTuple10.ui )
113 eficas_compile_ui ( desWidgetUniqueSDCO.ui )
114 eficas_compile_ui ( desWidgetVide.ui )
115
116 add_custom_target ( CompileUI ALL DEPENDS ${_PYFILES}
117                     COMMENT "Built UI files"
118                   )
119
120 install ( FILES ${_PYFILES}
121           DESTINATION ${CMAKE_INSTALL_PREFIX}/UiQT5
122         )
123
124 # Rules to compile TS files
125 SET(TSFILES eficas_en.ts
126             eficas_fr.ts)
127
128 SET(QMFILES)
129 FOREACH(input ${TSFILES})
130   GET_FILENAME_COMPONENT(base ${input} NAME_WE)
131   SET(output ${CMAKE_CURRENT_BINARY_DIR}/${base}.qm)
132   SET(QMFILES ${QMFILES} ${output})
133   ADD_CUSTOM_COMMAND(OUTPUT ${output}
134     COMMAND ${QT_LRELEASE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${input} -qm ${output}
135     #    EXECUTE_PROCESS(COMMAND \${MYLRELEASE} \${MYTSFILE} -qm \${MYFULLDIR}/\${MYOUTQMFILE})
136     MAIN_DEPENDENCY ${input})
137 ENDFOREACH(input ${TSFILES})
138
139 ADD_CUSTOM_TARGET(CompileTS ALL DEPENDS ${QMFILES})
140 INSTALL(FILES ${QMFILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/UiQT5)
141
142 ### Local Variables:
143 ### mode: cmake
144 ### End: