1 .PHONY: all clean realclean distclean emptyoutput prepinstall actualinstall install copyonlyinstall uninstall troubleshoot outputdirs bootstrap deps ecere ecerecom ecerevanilla ear compiler prepbinaries epj2make ide documentor eda prepcodeguard codeguard
14 ifdef ProgramFiles(x86)
15 export DESTDIR=${ProgramFiles(x86)}/Ecere SDK
18 export DESTDIR=$(ProgramFiles)/Ecere SDK
20 export DESTDIR=$(SystemDrive)/Ecere SDK
29 export DOCDIR=$(DESTDIR)$(prefix)/doc
33 export BINDIR=$(DESTDIR)$(prefix)/bin
37 export LIBDIR=$(BINDIR)
41 export SLIBDIR=$(DESTDIR)$(prefix)/lib
45 export SAMPLESDIR=$(DESTDIR)$(prefix)/samples
49 export EXTRASDIR=$(DESTDIR)$(prefix)/extras
66 export DOCDIR=$(DESTDIR)$(prefix)/share/ecere/doc
70 export BINDIR=$(DESTDIR)$(prefix)/bin
73 HOSTTYPE := $(shell uname -m)
76 ifeq "$(HOSTTYPE)" "x86_64"
77 export LIBDIR=$(DESTDIR)$(prefix)/lib32
79 export LIBDIR=$(DESTDIR)$(prefix)/lib
84 ifeq "$(HOSTTYPE)" "x86_64"
85 export SLIBDIR=$(DESTDIR)$(prefix)/lib32
87 export SLIBDIR=$(DESTDIR)$(prefix)/lib
92 export SAMPLESDIR=$(DESTDIR)$(prefix)/share/ecere/samples
96 export EXTRASDIR=$(DESTDIR)$(prefix)/share/ecere/extras
102 OBJDIR := obj$(OBJALT)/
103 OBJBINDIR := $(OBJDIR)$(PLATFORM)/bin/
104 OBJLIBDIR := $(OBJDIR)$(PLATFORM)/lib/
106 all: prepbinaries ide epj2make documentor eda codeguard
107 @$(call echo,The Ecere SDK is fully built.)
110 $(if $(wildcard $(OBJDIR)),,$(call mkdirq,$(OBJDIR)))
111 $(if $(wildcard $(OBJBINDIR)),,$(call mkdirq,$(OBJBINDIR)))
112 $(if $(wildcard $(OBJLIBDIR)),,$(call mkdirq,$(OBJLIBDIR)))
114 bootstrap: outputdirs
115 cd compiler && $(MAKE) bootstrap
118 @$(call echo,Building dependencies...)
121 ecere: bootstrap deps
122 @$(call echo,Building 2nd stage ecere...)
123 cd ecere && $(MAKE) nores
124 cd ear && $(MAKE) nores
125 cd ecere && $(MAKE) cleantarget
129 @$(call echo,Building eC Core Runtime...)
130 cd ecere && $(MAKE) -f Makefile.ecereCOM
132 ecerevanilla: bootstrap
133 @$(call echo,Building Vanilla Ecere...)
134 cd ecere && $(MAKE) -f Makefile.vanilla
136 ear: ecere ecerevanilla
137 @$(call echo,Building ear...)
138 cd ear && cd cmd && $(MAKE) cleantarget
142 @$(call echo,Building 2nd stage compiler)
143 cd compiler && $(MAKE)
145 prepbinaries: compiler ecerecom
146 @$(call echo,Enabling 2nd stage binaries...)
148 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJBINDIR))
149 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
150 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJBINDIR))
153 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJLIBDIR))
154 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
155 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJLIBDIR))
156 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
157 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
158 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
159 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
160 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
161 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
165 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJLIBDIR))
166 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
167 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJLIBDIR))
170 $(call cpq,ear/cmd/obj/release.$(PLATFORM)/ear$(E),$(OBJBINDIR))
171 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)/ecc$(E),$(OBJBINDIR))
172 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)/ecp$(E),$(OBJBINDIR))
173 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)/ecs$(E),$(OBJBINDIR))
175 epj2make: prepbinaries
176 @$(call echo,Building epj2make...)
177 cd epj2make && $(MAKE)
180 @$(call echo,Building IDE...)
183 documentor: prepbinaries
184 @$(call echo,Building Documentor...)
185 cd documentor && $(MAKE)
187 codeguard: prepcodeguard
189 @$(call echo,Building CodeGuard client...)
190 cd codeGuard && $(MAKE)
196 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
200 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
201 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
202 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
207 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
213 @$(call echo,Building EDA...)
216 emptyoutput: outputdirs
217 $(call rmq,$(OBJLIBDIR)libecereVanilla$(A))
218 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO))
219 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO))
220 $(call rmq,$(SODESTDIR)$(LP)ec$(SO))
221 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO))
222 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO))
223 ifdef EDASQLiteCipher
224 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO))
227 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO).0)
228 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO).0)
229 $(call rmq,$(SODESTDIR)$(LP)ec$(SO).0)
230 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO).0)
231 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO).0)
232 ifdef EDASQLiteCipher
233 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO).0)
235 $(call rmq,$(SODESTDIR)$(LP)ecere$(SOV))
236 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SOV))
237 $(call rmq,$(SODESTDIR)$(LP)ec$(SOV))
238 $(call rmq,$(SODESTDIR)$(LP)EDA$(SOV))
239 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SOV))
240 ifdef EDASQLiteCipher
241 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SOV))
244 $(call rmq,$(OBJBINDIR)ear$(E))
245 $(call rmq,$(OBJBINDIR)ecc$(E))
246 $(call rmq,$(OBJBINDIR)ecp$(E))
247 $(call rmq,$(OBJBINDIR)ecs$(E))
248 $(call rmq,$(OBJBINDIR)epj2make$(E))
249 $(call rmq,$(OBJBINDIR)ide$(E))
250 $(call rmq,$(OBJBINDIR)documentor$(E))
251 ifdef EDASQLiteCipher
252 $(call rmq,$(OBJBINDIR)CodeGuard$(E))
256 cd deps && $(MAKE) clean
257 cd ecere && $(MAKE) clean
258 cd compiler && $(MAKE) clean
259 cd ear && $(MAKE) clean
260 cd epj2make && $(MAKE) clean
261 cd ide && $(MAKE) clean
262 cd documentor && $(MAKE) clean
264 cd codeGuard && $(MAKE) clean
266 cd eda && $(MAKE) clean
270 cd deps && $(MAKE) realclean
271 cd ecere && $(MAKE) realclean
272 cd compiler && $(MAKE) realclean
273 cd ear && $(MAKE) realclean
274 cd epj2make && $(MAKE) realclean
275 cd ide && $(MAKE) realclean
276 cd documentor && $(MAKE) realclean
278 cd codeGuard && $(MAKE) realclean
280 cd eda && $(MAKE) realclean
281 $(call rmrq,obj/$(PLATFORM)/)
285 cd deps && $(MAKE) distclean
286 cd ecere && $(MAKE) distclean
287 cd compiler && $(MAKE) distclean
288 cd ear && $(MAKE) distclean
289 cd epj2make && $(MAKE) distclean
290 cd ide && $(MAKE) distclean
291 cd documentor && $(MAKE) distclean
293 cd codeGuard && $(MAKE) distclean
295 cd eda && $(MAKE) distclean
299 DOC = doc/tao.pdf doc/ecere.eCdoc doc/ecereCOM.eCdoc doc/EDA.eCdoc
302 ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV) \
303 ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV) \
304 ecere/obj/vanilla.$(PLATFORM)/libecereVanilla$(A) \
305 compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV) \
306 compiler/ecp/obj/release.$(PLATFORM)/ecp$(E) \
307 compiler/ecc/obj/release.$(PLATFORM)/ecc$(E) \
308 compiler/ecs/obj/release.$(PLATFORM)/ecs$(E) \
309 ear/cmd/obj/release.$(PLATFORM)/ear$(E) \
310 epj2make/obj/release.$(PLATFORM)/epj2make$(E) \
311 documentor/obj/release.$(PLATFORM)/documentor$(E) \
312 ide/obj/release.$(PLATFORM)/ide$(E) \
313 eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV) \
314 eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SOV)
317 BINARIES += codeGuard/obj/release.$(PLATFORM)/CodeGuard$(E)
320 ifdef EDASQLiteCipher
321 BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SOV)
324 # Making sure everything is in $(OBJBINDIR) and $(OBJLIBDIR)
325 # Shared Libraries (in $(OBJBINDIR) on Windows and $(OBJLIBDIR) otherwise)
326 # Symlinks for libs on Linux
327 # Binaries (always in $(OBJBINDIR)) and Static Libraries (always in $(OBJLIBDIR))
328 prepinstall: $(DOC) $(BINARIES) outputdirs
331 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJBINDIR))
332 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
333 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJBINDIR))
334 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
335 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
336 ifdef EDASQLiteCipher
337 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
342 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJLIBDIR))
343 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
344 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJLIBDIR))
345 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
346 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
347 ifdef EDASQLiteCipher
348 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
350 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
351 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
352 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
353 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
354 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO).0
355 ifdef EDASQLiteCipher
356 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO).0
358 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
359 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
360 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
361 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
362 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO)
363 ifdef EDASQLiteCipher
364 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO)
370 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJLIBDIR))
371 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
372 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJLIBDIR))
373 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
374 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
375 ifdef EDASQLiteCipher
376 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
381 $(call cpq,ide/obj/release.$(PLATFORM)/ide$(E),$(OBJBINDIR))
382 $(call cpq,ear/cmd/obj/release.$(PLATFORM)/ear$(E),$(OBJBINDIR))
383 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)/ecc$(E),$(OBJBINDIR))
384 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)/ecp$(E),$(OBJBINDIR))
385 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)/ecs$(E),$(OBJBINDIR))
386 $(call cpq,epj2make/obj/release.$(PLATFORM)/epj2make$(E),$(OBJBINDIR))
387 $(call cpq,documentor/obj/release.$(PLATFORM)/documentor$(E),$(OBJBINDIR))
389 $(call cpq,codeGuard/obj/release.$(PLATFORM)/CodeGuard$(E),$(OBJBINDIR))
391 $(call cpq,ecere/obj/vanilla.$(PLATFORM)/libecereVanilla$(A),$(OBJLIBDIR))
394 install: prepinstall actualinstall
395 @$(call echo,The Ecere SDK has been installed.)
397 copyonlyinstall: actualinstall
398 @$(call echo,The Ecere SDK has been installed. copyonlyinstall.)
402 $(call mkdirq,"$(BINDIR)/")
403 $(call mkdirq,"$(SLIBDIR)/")
404 $(call mkdirq,"$(DOCDIR)/")
405 $(call cpq,$(OBJBINDIR)$(LP)ecere$(SO),"$(LIBDIR)/")
406 $(call cpq,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(LIBDIR)/")
407 $(call cpq,$(OBJBINDIR)$(LP)ec$(SO),"$(LIBDIR)/")
408 $(call cpq,$(OBJBINDIR)$(LP)EDA$(SO),"$(LIBDIR)/")
409 $(call cpq,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(LIBDIR)/")
410 ifdef EDASQLiteCipher
411 $(call cpq,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(LIBDIR)/")
413 $(call cpq,$(OBJBINDIR)ide$(E),"$(BINDIR)/")
414 $(call cpq,$(OBJBINDIR)ear$(E),"$(BINDIR)/")
415 $(call cpq,$(OBJBINDIR)ecc$(E),"$(BINDIR)/")
416 $(call cpq,$(OBJBINDIR)ecp$(E),"$(BINDIR)/")
417 $(call cpq,$(OBJBINDIR)ecs$(E),"$(BINDIR)/")
418 $(call cpq,$(OBJBINDIR)epj2make$(E),"$(BINDIR)/")
419 $(call cpq,$(OBJBINDIR)documentor$(E),"$(BINDIR)/")
421 $(call cpq,$(OBJBINDIR)CodeGuard$(E),"$(BINDIR)/")
423 $(call cpq,$(OBJLIBDIR)libecereVanilla$(A),"$(SLIBDIR)/")
424 $(call cpq,doc/tao.pdf,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
425 $(call cpq,doc/ecere.eCdoc,"$(DOCDIR)/")
426 $(call cpq,doc/ecereCOM.eCdoc,"$(DOCDIR)/")
427 $(call cpq,doc/EDA.eCdoc,"$(DOCDIR)/")
431 install $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/
432 install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/
433 install $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/
434 install $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/
435 install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/
436 ifdef EDASQLiteCipher
437 install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/
439 install $(OBJBINDIR)ide$(E) $(BINDIR)/
440 install $(OBJBINDIR)ear$(E) $(BINDIR)/
441 install $(OBJBINDIR)ecc$(E) $(BINDIR)/
442 install $(OBJBINDIR)ecp$(E) $(BINDIR)/
443 install $(OBJBINDIR)ecs$(E) $(BINDIR)/
444 install $(OBJBINDIR)epj2make$(E) $(BINDIR)/
445 install $(OBJBINDIR)documentor$(E) $(BINDIR)/
447 install $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/
449 install $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/
450 install -d $(DOCDIR)/
451 install doc/tao.pdf $(DOCDIR)/"Ecere Tao of Programming [work in progress].pdf"
452 install doc/ecere.eCdoc $(DOCDIR)/
453 install doc/ecereCOM.eCdoc $(DOCDIR)/
454 install doc/EDA.eCdoc $(DOCDIR)/
455 mkdir -p -m 777 $(SAMPLESDIR)
456 cp -pRf samples/* $(SAMPLESDIR)
457 mkdir -p -m 777 $(EXTRASDIR)
458 cp -pRf extras/* $(EXTRASDIR)
464 install -D $(OBJLIBDIR)$(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SOV)
465 install -D $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SOV)
466 install -D $(OBJLIBDIR)$(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SOV)
467 install -D $(OBJLIBDIR)$(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SOV)
468 install -D $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SOV)
469 ifdef EDASQLiteCipher
470 install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)
472 ln -sf $(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SO).0
473 ln -sf $(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SO).0
474 ln -sf $(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SO).0
475 ln -sf $(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SO).0
476 ln -sf $(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SO).0
477 ifdef EDASQLiteCipher
478 ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0
480 ln -sf $(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SO)
481 ln -sf $(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SO)
482 ln -sf $(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SO)
483 ln -sf $(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SO)
484 ln -sf $(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SO)
485 ifdef EDASQLiteCipher
486 ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
488 install -D share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
489 install -D share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
491 install -D $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/$(LP)ecere$(SO)
492 install -D $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/$(LP)ecereCOM$(SO)
493 install -D $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/$(LP)ec$(SO)
494 install -D $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/$(LP)EDA$(SO)
495 install -D $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/$(LP)EDASQLite$(SO)
496 ifdef EDASQLiteCipher
497 install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
500 install -D $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
501 install -D $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
502 install -D $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
503 install -D $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
504 install -D $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
505 install -D $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
506 install -D $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
508 install -D $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
510 install -D $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/libecereVanilla$(A)
511 install -D doc/tao.pdf $(DOCDIR)/"Ecere Tao of Programming [work in progress].pdf"
512 install -D doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
513 install -D doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
514 install -D doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
515 mkdir -p -m 777 $(SAMPLESDIR)
516 cp -pRf samples/* $(SAMPLESDIR)
517 mkdir -p -m 777 $(EXTRASDIR)
518 cp -pRf extras/* $(EXTRASDIR)
523 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO)")
524 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO)")
525 $(call rmq,"$(LIBDIR)/$(LP)ec$(SO)")
526 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO)")
527 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO)")
528 ifdef EDASQLiteCipher
529 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO)")
531 $(call rmq,"$(BINDIR)/ide$(E)")
532 $(call rmq,"$(BINDIR)/ear$(E)")
533 $(call rmq,"$(BINDIR)/ecc$(E)")
534 $(call rmq,"$(BINDIR)/ecp$(E)")
535 $(call rmq,"$(BINDIR)/ecs$(E)")
536 $(call rmq,"$(BINDIR)/epj2make$(E)")
537 $(call rmq,"$(BINDIR)/documentor$(E)")
539 $(call rmq,"$(BINDIR)/CodeGuard$(E)")
541 $(call rmq,"$(SLIBDIR)/libecereVanilla$(A)")
542 $(call rmq,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
543 $(call rmq,"$(DOCDIR)/ecere.eCdoc")
544 $(call rmq,"$(DOCDIR)/ecereCOM.eCdoc")
545 $(call rmq,"$(DOCDIR)/EDA.eCdoc")
547 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO).0")
548 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO).0")
549 $(call rmq,"$(LIBDIR)/$(LP)ec$(SO).0")
550 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO).0")
551 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO).0")
552 ifdef EDASQLiteCipher
553 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0")
555 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SOV)")
556 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SOV)")
557 $(call rmq,"$(LIBDIR)/$(LP)ec$(SOV)")
558 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SOV)")
559 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SOV)")
560 ifdef EDASQLiteCipher
561 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)")
563 $(call rmq,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
564 $(call rmq,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
566 $(call rmdirq,"$(BINDIR)/")
567 $(call rmdirq,"$(LIBDIR)/")
568 $(call rmdirq,"$(SLIBDIR)/")
569 $(call rmdirq,"$(DOCDIR)/")
571 $(call rmdirq,"$(DESTDIR)/")
573 @$(call echo,The Ecere SDK has been uninstalled.)
576 @$(call echo,Printing values of some variables.)
577 @$(call echo,CCACHE=$(CCACHE))
578 @$(call echo,CCACHE_COMPILE=$(CCACHE_COMPILE))
579 @$(call echo,CCACHE_PREFIX=$(CCACHE_PREFIX))
580 @$(call echo,DISTCC=$(DISTCC))
581 @$(call echo,CC=$(CC))
582 @$(call echo,CPP=$(CPP))
583 @$(call echo,ECP=$(ECP))
584 @$(call echo,ECC=$(ECC))
585 @$(call echo,ECS=$(ECS))
586 @$(call echo,EAR=$(EAR))
587 @$(call echo,AS=$(AS))
588 @$(call echo,LD=$(LD))
589 @$(call echo,AR=$(AR))
590 @$(call echo,STRIP=$(STRIP))
591 @$(call echo,UPX=$(UPX))