1 ##############################################################################
4 ## Copyright (C) 2007 ##
7 ## This library is free software; you can redistribute it and/or modify ##
8 ## it under the terms of the GNU General Public License as published by ##
9 ## the Free Software Foundation; either version 2 of the License, or (at ##
10 ## your option) any later version. ##
12 ## This library is distributed in the hope that it will be useful, but ##
13 ## WITHOUT ANY WARRANTY; without even the implied warranty of ##
14 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ##
15 ## General Public License for more details. ##
17 ## You should have received a copy of the GNU General Public License ##
18 ## along with this library; if not, write to the Free Software Foundation, ##
19 ## Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ##
20 ##############################################################################
26 GENERAL_OPTIONS
= CP
="$(CP)" MKDIR
="$(MKDIR)" RM
="$(RM)" \
27 GNATMAKE
="$(GNATMAKE)" GNATCLEAN
="$(GNATCLEAN)" GNATCHECK
="$(GNATCHECK)" \
28 EXEEXT
="$(EXEEXT)" LIB_KIND
="$(LIB_KIND)" DIFF
="$(DIFF)"
30 OPTIONS
= MODE
="$(MODE)" $(GENERAL_OPTIONS
)
32 ifeq ($(OS
),Windows_NT
)
44 MODULES
= diouzhtu diouzhtu2html gwiad_wiki_service
46 MODULES_BUILD
= ${MODULES
:%=%_build
}
48 MODULES_SETUP
= ${MODULES
:%=%_setup
}
50 MODULES_CLEAN
= ${MODULES
:%=%_clean
}
52 MODULES_CHECK
= ${MODULES
:%=%_check
}
54 ifeq ("$(INSTALL)", "..")
55 $(error
"Wrong install path : INSTALL='$(INSTALL)'")
57 ifeq ("$(INSTALL)", "")
58 $(error
"Wrong install path : empty INSTALL var")
66 setup
: $(MODULES_SETUP
)
68 clean: $(MODULES_CLEAN
)
70 check :$(MODULES_CHECK
)
74 I_BIN
= $(INSTALL
)/bin
75 I_INC
= $(INSTALL
)/include/diouzhtu
76 I_INC_W
= $(INSTALL
)/include/wiki_interface
77 I_LIB
= $(INSTALL
)/lib
/
78 I_LIB_D
= $(INSTALL
)/lib
/diouzhtu
79 I_LIB_W
= $(INSTALL
)/lib
/wiki_interface
80 I_GPR
= $(INSTALL
)/lib
/gnat
81 I_DLIB
= $(INSTALL
)/share
/diouzhtu
/dlib
83 PLUGIN_DISTRIB
= gwiad_wiki_plugin
84 GWIAD_SERVICES
= $(GWIAD_DIR
)/lib
/services
85 GWIAD_WEBSITES
= $(GWIAD_DIR
)/lib
/websites
88 ${MAKE} -C
${@
:%_build
=%} $(OPTIONS
)
91 ${MAKE} -C
${@
:%_setup
=%} setup
$(OPTIONS
)
94 ${MAKE} -C
${@
:%_clean
=%} clean $(OPTIONS
)
97 ${MAKE} -C
${@
:%_check
=%} check $(OPTIONS
)
102 $(RM
) -f
$(I_GPR
)/diouzhtu.gpr
104 install_dirs
: install_clean
113 install: install_dirs
114 $(CP
) diouzhtu
/lib
/* $(I_LIB_D
)
115 for library in
`ls $(I_LIB_D)/*$(SOEXT)`; do \
116 $(LN
) $$library $(I_LIB
); \
118 $(CP
) gwiad_wiki_service
/interface
/lib
/*$(SOEXT
) $(I_LIB_W
)
119 for library in
`ls $(I_LIB_W)/*$(SOEXT)`; do \
120 $(LN
) $$library $(I_LIB
); \
122 $(CP
) diouzhtu
/src
/*.ad
[sb
] $(I_INC
)
123 $(CP
) gwiad_wiki_service
/interface
/src
/*.ads
$(I_INC_W
)
124 $(CP
) gwiad_wiki_service
/lib
/*$(SOEXT
) $(I_DLIB
)
125 $(CP
) config
/projects
/diouzhtu.gpr
$(I_GPR
)
126 $(CP
) config
/projects
/wiki_interface.gpr
$(I_GPR
)
128 install_gwiad_interface
:
129 $(CP
) gwiad_wiki_service
/interface
/lib
/*wiki_interface
$(SOEXT
) \
132 install_gwiad_service
:
133 $(RM
) $(GWIAD_SERVICES
)/libwiki_service.so
134 $(CP
) $(INSTALL
)/lib
/diouzhtu
/*$(SOEXT
) $(GWIAD_DIR
)/bin
/
135 $(CP
) gwiad_wiki_service
/lib
/*wiki_service
$(SOEXT
) $(GWIAD_SERVICES
)
137 install_gwiad_website
:
138 $(RM
) $(GWIAD_WEBSITES
)/*wiki_website
$(SOEXT
)
139 $(MKDIR
) $(GWIAD_DIR
)/plugins
/wiki_website
/example
/templates
/
140 $(MKDIR
) $(GWIAD_DIR
)/plugins
/wiki_website
/example
/css
141 $(MKDIR
) $(GWIAD_DIR
)/plugins
/wiki_website
/example
/js
142 $(CP
) gwiad_wiki_service
/website
/config
/config.ini \
143 $(GWIAD_DIR
)/plugins
/wiki_website
/example
/
144 $(CP
) gwiad_wiki_service
/website
/templates
/*.thtml \
145 $(GWIAD_DIR
)/plugins
/wiki_website
/example
/templates
/
146 $(CP
) gwiad_wiki_service
/website
/css
/*.css \
147 $(GWIAD_DIR
)/plugins
/wiki_website
/example
/css
/
148 $(CP
) external_libraries
/highlight
/*.js \
149 $(GWIAD_DIR
)/plugins
/wiki_website
/example
/js
/
150 $(CP
) -r external_libraries
/highlight
/languages \
151 $(GWIAD_DIR
)/plugins
/wiki_website
/example
/js
/
152 $(CP
) gwiad_wiki_service
/lib
/*wiki_website
$(SOEXT
) $(GWIAD_WEBSITES
)
154 install_gwiad_all
: install_gwiad_interface install_gwiad_service \
155 install_gwiad_website
157 gwiad_plugin_distrib
:
158 $(MKDIR
) -p
$(PLUGIN_DISTRIB
)
159 $(CP
) gwiad_wiki_service
/interface
/lib
/*wiki_interface
$(SOEXT
) \
161 $(CP
) gwiad_wiki_service
/lib
/*wiki_website
$(SOEXT
) $(PLUGIN_DISTRIB
)/
162 $(CP
) gwiad_wiki_service
/lib
/*wiki_service
$(SOEXT
) $(PLUGIN_DISTRIB
)/
163 $(CP
) gwiad_wiki_service
/plugin
/install.sh
$(PLUGIN_DISTRIB
)/
164 $(CP
) $(INSTALL
)/lib
/diouzhtu
/*$(SOEXT
) $(PLUGIN_DISTRIB
)/
165 $(MKDIR
) $(PLUGIN_DISTRIB
)/example
/templates
/
166 $(MKDIR
) $(PLUGIN_DISTRIB
)/example
/css
167 $(MKDIR
) $(PLUGIN_DISTRIB
)/example
/js
168 $(CP
) gwiad_wiki_service
/website
/config
/config.ini \
169 $(PLUGIN_DISTRIB
)/example
/
170 $(CP
) gwiad_wiki_service
/website
/templates
/*.thtml \
171 $(PLUGIN_DISTRIB
)/example
/templates
/
172 $(CP
) gwiad_wiki_service
/website
/css
/*.css \
173 $(PLUGIN_DISTRIB
)/example
/css
/
174 $(CP
) external_libraries
/highlight
/*.js \
175 $(PLUGIN_DISTRIB
)/example
/js
/
176 $(CP
) -r external_libraries
/highlight
/languages \
177 $(PLUGIN_DISTRIB
)/example
/js
/
178 $(TAR_DIR
) $(PLUGIN_DISTRIB
).tgz
$(PLUGIN_DISTRIB
)
179 $(RM
) -r
$(PLUGIN_DISTRIB
)
182 (cd diouzhtu
/obj
/; gcov
-abfu ..
/src
/*)
183 (cd diouzhtu2html
/obj
/;gcov
-abfu ..
/src
/*)
186 make
-C diouzhtu2html regtests
$(GENERAL_OPTIONS
)
187 # make -C diouzhtu2html/test MODE="Profile" $(GENERAL_OPTIONS)
188 # rm -f diouzhtu2html/test/obj/* # To avoid error in lcov_analyse ???
189 # rm -fr diouzhtu2html/obj/*
190 make
-C gwiad_wiki_service
/regtests MODE
="Profile" $(GENERAL_OPTIONS
)