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 fixprecompile cleantarget pots installer regenbootstrap updatebootstrap update_ecere update_libec update_ecp update_ecc update_ecs ecereaudio
6 include crossplatform.mk
17 XBOOT := $(if $(CROSS_TARGET),GCC_PREFIX= TARGET_PLATFORM=$(HOST_PLATFORM) PLATFORM=$(HOST_PLATFORM),)
21 ifneq "$ECERE_AUDIO" "n"
32 HOST_SOV := $(HOST_SO)
34 HOST_SOV := $(HOST_SO)$(LIBVER)
43 ifeq "$(TARGET_ARCH)" "x86_64"
44 ifneq "$(wildcard $(SystemDrive)/Program\ Files )" ""
45 export DESTDIR=$(SystemDrive)/Program Files/Ecere SDK
47 export DESTDIR=$(SystemDrive)/Ecere SDK
50 ifdef ProgramFiles(x86)
51 export DESTDIR=${ProgramFiles(x86)}/Ecere SDK
54 export DESTDIR=$(ProgramFiles)/Ecere SDK
56 export DESTDIR=$(SystemDrive)/Ecere SDK
66 export DOCDIR=$(DESTDIR)$(prefix)/doc
70 export BINDIR=$(DESTDIR)$(prefix)/bin
74 export LIBDIR=$(BINDIR)
76 export DESTLIBDIR=$(LIBDIR)
79 export SLIBDIR=$(DESTDIR)$(prefix)/lib
81 export DESTSLIBDIR=$(SLIBDIR)
84 export SAMPLESDIR=$(DESTDIR)$(prefix)/samples
88 export EXTRASDIR=$(DESTDIR)$(prefix)/extras
110 export DOCDIR=$(DESTDIR)$(prefix)/share/ecere/doc
114 export MANDIR=$(DESTDIR)$(prefix)/share/man/
118 export BINDIR=$(DESTDIR)$(prefix)/bin
122 export PREFIXLIBDIR=$(LIBDIR)
124 export PREFIXLIBDIR=$(prefix)/lib/$(TARGET_ARCH)
126 ifeq "$(wildcard $(prefix)/lib/$(TARGET_ARCH) )" ""
127 export PREFIXLIBDIR=$(prefix)/lib
129 ifeq "$(TARGET_ARCH)" "i386-linux-gnu"
130 ifneq "$(wildcard $(prefix)/lib32 )" ""
131 export PREFIXLIBDIR=$(prefix)/lib32
139 CPPFLAGS += -DDEB_HOST_MULTIARCH=\"$(call escspace,$(PREFIXLIBDIR))\"
141 DESTLIBDIR := $(DESTDIR)$(PREFIXLIBDIR)
143 DESTSLIBDIR := $(DESTDIR)$(SLIBDIR)
145 DESTSLIBDIR := $(DESTLIBDIR)
149 export SAMPLESDIR=$(DESTDIR)$(prefix)/share/ecere/samples
153 export EXTRASDIR=$(DESTDIR)$(prefix)/share/ecere/extras
159 OBJDIR := obj$(OBJALT)/
160 OBJBINDIR := $(OBJDIR)$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/
161 OBJLIBDIR := $(OBJDIR)$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/
162 XOBJDIR := obj$(OBJALT)/
163 XOBJBINDIR := $(OBJDIR)$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/
164 XOBJLIBDIR := $(OBJDIR)$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/
166 all: prepbinaries ide epj2make documentor eda codeguard ecereaudio
167 @$(call echo,The Ecere SDK is fully built.)
170 $(if $(wildcard $(OBJDIR)),,$(call mkdirq,$(OBJDIR)))
171 $(if $(wildcard $(OBJBINDIR)),,$(call mkdirq,$(OBJBINDIR)))
172 $(if $(wildcard $(OBJLIBDIR)),,$(call mkdirq,$(OBJLIBDIR)))
174 $(if $(wildcard $(XOBJDIR)),,$(call mkdirq,$(XOBJDIR)))
175 $(if $(wildcard $(XOBJBINDIR)),,$(call mkdirq,$(XOBJBINDIR)))
176 $(if $(wildcard $(XOBJLIBDIR)),,$(call mkdirq,$(XOBJLIBDIR)))
179 bootstrap: outputdirs
180 cd compiler && $(MAKE) $(XBOOT) bootstrap
185 @$(call echo,Building dependencies (host)...)
186 cd deps && $(MAKE) $(XBOOT)
190 @$(call echo,Building dependencies...)
194 ecere: bootstrap deps
196 @$(call echo,Building 2nd stage ecere (host)...)
198 @$(call echo,Building 2nd stage ecere...)
200 cd ecere && $(MAKE) nores $(XBOOT)
201 cd ear && $(MAKE) nores $(XBOOT)
202 cd ecere && $(MAKE) cleaneceretarget
204 @$(call echo,Building 2nd stage ecere...)
210 @$(call echo,Building eC Core Runtime (host)...)
211 cd ecere && $(MAKE) -f Makefile.ecereCOM $(XBOOT)
213 @$(call echo,Building eC Core Runtime...)
214 cd ecere && $(MAKE) -f Makefile.ecereCOM
216 ecerevanilla: bootstrap
217 @$(call echo,Building Vanilla Ecere...)
218 cd ecere && $(MAKE) -f Makefile.vanilla
220 ear: ecere ecerevanilla
221 @$(call echo,Building ear...)
222 cd ear && cd cmd && $(MAKE) cleantarget
226 cd compiler && $(MAKE) fixprecompile
230 @$(call echo,Building 2nd stage compiler (host))
231 cd compiler && $(MAKE) $(XBOOT)
233 @$(call echo,Building 2nd stage compiler)
234 cd compiler && $(MAKE)
236 prepbinaries: compiler ecerecom
237 @$(call echo,Enabling 2nd stage binaries...)
239 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJBINDIR))
240 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
241 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJBINDIR))
244 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
245 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
246 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
247 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
248 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
249 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
250 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
251 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
252 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
254 ifndef WINDOWS_TARGET
256 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
257 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
258 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
261 $(call cpq,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
262 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
263 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
264 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
269 $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJBINDIR))
270 $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJBINDIR))
271 $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJBINDIR))
274 $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJLIBDIR))
275 $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJLIBDIR))
276 $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJLIBDIR))
277 ln -sf $(HOST_LP)ecere$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecere$(HOST_SO).0
278 ln -sf $(HOST_LP)ecereCOM$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecereCOM$(HOST_SO).0
279 ln -sf $(HOST_LP)ec$(HOST_SOV) $(XOBJLIBDIR)$(LP)ec$(HOST_SO).0
280 ln -sf $(HOST_LP)ecere$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecere$(HOST_SO)
281 ln -sf $(HOST_LP)ecereCOM$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecereCOM$(HOST_SO)
282 ln -sf $(HOST_LP)ec$(HOST_SOV) $(XOBJLIBDIR)$(LP)ec$(HOST_SO)
286 $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SO),$(XOBJLIBDIR))
287 $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SO),$(XOBJLIBDIR))
288 $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SO),$(XOBJLIBDIR))
291 $(call cpq,ear/cmd/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(HOST_E),$(XOBJBINDIR))
292 $(call cpq,compiler/ecc/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(HOST_E),$(XOBJBINDIR))
293 $(call cpq,compiler/ecp/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(HOST_E),$(XOBJBINDIR))
294 $(call cpq,compiler/ecs/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(HOST_E),$(XOBJBINDIR))
298 epj2make: prepbinaries
299 @$(call echo,Building epj2make...)
300 cd epj2make && $(MAKE)
302 ecereaudio: prepbinaries
304 @$(call echo,Building EcereAudio...)
305 cd extras/audio && $(MAKE)
309 @$(call echo,Building IDE...)
312 documentor: prepbinaries
313 @$(call echo,Building Documentor...)
314 cd documentor && $(MAKE)
316 codeguard: prepcodeguard
318 @$(call echo,Building CodeGuard client...)
319 cd codeGuard && $(MAKE)
325 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
329 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
330 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
331 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
334 ifndef WINDOWS_TARGET
336 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
343 @$(call echo,Building EDA (host))
344 cd eda && $(MAKE) $(XBOOT)
346 @$(call echo,Building EDA...)
349 emptyoutput: outputdirs
350 $(call rmq,$(OBJLIBDIR)libecereVanilla$(A))
351 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO))
352 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO))
353 $(call rmq,$(SODESTDIR)$(LP)ec$(SO))
354 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO))
355 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO))
356 ifdef EDASQLiteCipher
357 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO))
360 $(call rmq,$(SODESTDIR)$(LP)EcereAudio$(SO))
363 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO).0)
364 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO).0)
365 $(call rmq,$(SODESTDIR)$(LP)ec$(SO).0)
366 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO).0)
367 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO).0)
368 ifdef EDASQLiteCipher
369 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO).0)
372 $(call rmq,$(SODESTDIR)$(LP)EcereAudio$(SO).0)
374 $(call rmq,$(SODESTDIR)$(LP)ecere$(SOV))
375 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SOV))
376 $(call rmq,$(SODESTDIR)$(LP)ec$(SOV))
377 $(call rmq,$(SODESTDIR)$(LP)EDA$(SOV))
378 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SOV))
379 ifdef EDASQLiteCipher
380 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SOV))
383 $(call rmq,$(SODESTDIR)$(LP)EcereAudio$(SOV))
386 $(call rmq,$(OBJBINDIR)ear$(E))
387 $(call rmq,$(OBJBINDIR)ecc$(E))
388 $(call rmq,$(OBJBINDIR)ecp$(E))
389 $(call rmq,$(OBJBINDIR)ecs$(E))
390 $(call rmq,$(OBJBINDIR)epj2make$(E))
391 $(call rmq,$(OBJBINDIR)ide$(E))
392 $(call rmq,$(OBJBINDIR)documentor$(E))
394 $(call rmq,$(OBJBINDIR)CodeGuard$(E))
398 cd compiler && $(MAKE) cleantarget
399 cd documentor && $(MAKE) cleantarget
400 cd ear && $(MAKE) cleantarget
401 cd ecere && $(MAKE) cleantarget
402 cd eda && $(MAKE) cleantarget
403 cd epj2make && $(MAKE) cleantarget
404 cd ide && $(MAKE) cleantarget
405 cd installer && $(MAKE) cleantarget
409 cd installer && $(MAKE) OUTPUT_POT=1 pots
413 $(MAKE) prepinstall ARCH=
414 $(MAKE) prepinstall ARCH=x32
415 @$(call echo,Building Ecere runtime for installer...)
416 cd ecere && @$(MAKE) -f Makefile.installer ARCH=x32
417 @$(call echo,Building Installer for Windows...)
418 cd installer && @$(MAKE) ARCH=x32
419 @$(call echo,The Ecere SDK Windows Installer is fully built.)
424 cd deps && $(MAKE) clean
426 cd ecere && $(MAKE) clean
427 cd compiler && $(MAKE) clean
428 cd ear && $(MAKE) clean
429 cd epj2make && $(MAKE) clean
430 cd ide && $(MAKE) clean
431 cd documentor && $(MAKE) clean
433 cd codeGuard && $(MAKE) clean
435 cd eda && $(MAKE) clean
438 realclean: outputdirs
440 cd deps && $(MAKE) realclean
442 cd ecere && $(MAKE) realclean
443 cd compiler && $(MAKE) realclean
444 cd ear && $(MAKE) realclean
445 cd epj2make && $(MAKE) realclean
446 cd ide && $(MAKE) realclean
447 cd documentor && $(MAKE) realclean
449 cd codeGuard && $(MAKE) realclean
451 cd eda && $(MAKE) realclean
452 $(call rmrq,obj/$(PLATFORM)/)
455 distclean: outputdirs
457 cd deps && $(MAKE) distclean
459 cd ecere && $(MAKE) distclean
460 cd compiler && $(MAKE) distclean
461 cd ear && $(MAKE) distclean
462 cd epj2make && $(MAKE) distclean
463 cd ide && $(MAKE) distclean
464 cd documentor && $(MAKE) distclean
466 cd codeGuard && $(MAKE) distclean
468 cd eda && $(MAKE) distclean
472 DOC = doc/ecere.eCdoc doc/ecereCOM.eCdoc doc/EDA.eCdoc
475 ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV) \
476 ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV) \
477 ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A) \
478 compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV) \
479 compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E) \
480 compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E) \
481 compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E) \
482 ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E) \
483 epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E) \
484 documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E) \
485 ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E) \
486 eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV) \
487 eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV)
490 BINARIES += extras/audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SOV)
494 BINARIES += codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E)
497 ifdef EDASQLiteCipher
498 BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV)
501 # Making sure everything is in $(OBJBINDIR) and $(OBJLIBDIR)
502 # Shared Libraries (in $(OBJBINDIR) on Windows and $(OBJLIBDIR) otherwise)
503 # Symlinks for libs on Linux
504 # Binaries (always in $(OBJBINDIR)) and Static Libraries (always in $(OBJLIBDIR))
505 prepinstall: $(DOC) $(BINARIES) outputdirs
508 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJBINDIR))
509 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
510 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJBINDIR))
511 $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJBINDIR))
512 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
514 $(call cpq,extras/audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SO),$(OBJBINDIR))
516 ifdef EDASQLiteCipher
517 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
522 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
523 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
524 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
525 $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV),$(OBJLIBDIR))
526 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
528 $(call cpq,extras/audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SOV),$(OBJLIBDIR))
530 ifdef EDASQLiteCipher
531 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
533 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
534 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
535 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
536 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
537 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO).0
538 ifdef EDASQLiteCipher
539 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO).0
542 ln -sf $(LP)EcereAudio$(SOV) $(OBJLIBDIR)$(LP)EcereAudio$(SO).0
545 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
546 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
547 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
548 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
549 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO)
550 ifdef EDASQLiteCipher
551 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO)
553 ln -sf $(LP)EcereAudio$(SOV) $(OBJLIBDIR)$(LP)EcereAudio$(SO)
556 ifndef WINDOWS_TARGET
558 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
559 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
560 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
561 $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJLIBDIR))
562 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
564 $(call cpq,extras/audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SO),$(OBJLIBDIR))
566 ifdef EDASQLiteCipher
567 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
572 $(call cpq,ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E),$(OBJBINDIR))
573 $(call cpq,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
574 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
575 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
576 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
577 $(call cpq,epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E),$(OBJBINDIR))
578 $(call cpq,documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E),$(OBJBINDIR))
580 $(call cpq,codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E),$(OBJBINDIR))
582 $(call cpq,ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A),$(OBJLIBDIR))
585 install: prepinstall actualinstall
586 @$(call echo,The Ecere SDK has been installed.)
588 copyonlyinstall: actualinstall
589 @$(call echo,The Ecere SDK has been installed. copyonlyinstall.)
593 $(call mkdirq,"$(BINDIR)/")
594 $(call mkdirq,"$(DESTSLIBDIR)/")
595 $(call mkdirq,"$(DOCDIR)/")
596 $(call cpq,$(OBJBINDIR)$(LP)ecere$(SO),"$(DESTLIBDIR)/")
597 $(call cpq,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(DESTLIBDIR)/")
598 $(call cpq,$(OBJBINDIR)$(LP)ec$(SO),"$(DESTLIBDIR)/")
599 $(call cpq,$(OBJBINDIR)$(LP)EDA$(SO),"$(DESTLIBDIR)/")
600 $(call cpq,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(DESTLIBDIR)/")
601 ifdef EDASQLiteCipher
602 $(call cpq,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(DESTLIBDIR)/")
605 $(call cpq,$(OBJBINDIR)$(LP)EcereAudio$(SO),"$(DESTLIBDIR)/")
607 $(call cpq,$(OBJBINDIR)ide$(E),"$(BINDIR)/")
608 $(call cpq,$(OBJBINDIR)ear$(E),"$(BINDIR)/")
609 $(call cpq,$(OBJBINDIR)ecc$(E),"$(BINDIR)/")
610 $(call cpq,$(OBJBINDIR)ecp$(E),"$(BINDIR)/")
611 $(call cpq,$(OBJBINDIR)ecs$(E),"$(BINDIR)/")
612 $(call cpq,$(OBJBINDIR)epj2make$(E),"$(BINDIR)/")
613 $(call cpq,$(OBJBINDIR)documentor$(E),"$(BINDIR)/")
615 $(call cpq,$(OBJBINDIR)CodeGuard$(E),"$(BINDIR)/")
617 $(call cpq,$(OBJLIBDIR)libecereVanilla$(A),"$(DESTSLIBDIR)/")
618 $(call cpq,doc/tao.pdf,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf") || echo "The Ecere Tao of Programming is available at http://ecere.com/tao.pdf"
619 $(call cpq,doc/ecere.eCdoc,"$(DOCDIR)/")
620 $(call cpq,doc/ecereCOM.eCdoc,"$(DOCDIR)/")
621 $(call cpq,doc/EDA.eCdoc,"$(DOCDIR)/")
625 install $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/
626 install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/
627 install $(OBJLIBDIR)$(LP)ec$(SO) $(DESTLIBDIR)/
628 install $(OBJLIBDIR)$(LP)EDA$(SO) $(DESTLIBDIR)/
629 install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(DESTLIBDIR)/
630 ifdef EDASQLiteCipher
631 install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(DESTLIBDIR)/
634 install $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/
636 install $(OBJBINDIR)ide$(E) $(BINDIR)/
637 install $(OBJBINDIR)ear$(E) $(BINDIR)/
638 install $(OBJBINDIR)ecc$(E) $(BINDIR)/
639 install $(OBJBINDIR)ecp$(E) $(BINDIR)/
640 install $(OBJBINDIR)ecs$(E) $(BINDIR)/
641 install $(OBJBINDIR)epj2make$(E) $(BINDIR)/
642 install $(OBJBINDIR)documentor$(E) $(BINDIR)/
644 install $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/
646 install $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/
647 install -d $(DOCDIR)/
648 install doc/tao.pdf $(DOCDIR)/"Ecere Tao of Programming [work in progress].pdf" >/dev/null 2>&1 || echo "The Ecere Tao of Programming is available at http://ecere.com/tao.pdf"
649 install doc/ecere.eCdoc $(DOCDIR)/
650 install doc/ecereCOM.eCdoc $(DOCDIR)/
651 install doc/EDA.eCdoc $(DOCDIR)/
652 mkdir -p $(MANDIR)/man1
653 cp -pRf share/man/man1/* $(MANDIR)/man1
654 mkdir -p $(SAMPLESDIR)
655 cp -pRf samples/* $(SAMPLESDIR)
656 find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
657 mkdir -p $(EXTRASDIR)
658 cp -pRf extras/* $(EXTRASDIR)
659 chmod 777 $(EXTRASDIR)/audio
663 ifndef WINDOWS_TARGET
665 mkdir -p $(DESTLIBDIR)/ec
666 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SOV)
667 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SOV)
668 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SOV)
669 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SOV)
670 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SOV)
671 ifdef EDASQLiteCipher
672 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SOV)
675 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SOV)
677 ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO).0
678 ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO).0
679 ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO).0
680 ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO).0
681 ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO).0
682 ifdef EDASQLiteCipher
683 ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO).0
686 ln -sf $(LP)EcereAudio$(SOV) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO).0
688 ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO)
689 ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
690 ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO)
691 ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO)
692 ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO)
693 ln -sf ../$(LP)ecere$(SOV) $(DESTLIBDIR)/ec/$(LP)ecere$(SO)
694 ln -sf ../$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/ec/$(LP)ecereCOM$(SO)
695 ifdef EDASQLiteCipher
696 ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO)
699 ln -sf $(LP)EcereAudio$(SOV) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO)
702 install $(INSTALL_FLAGS) -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
703 install $(INSTALL_FLAGS) -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
706 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/$(LP)ecere$(SO)
707 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
708 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ec$(SO) $(DESTLIBDIR)/$(LP)ec$(SO)
709 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDA$(SO) $(DESTLIBDIR)/$(LP)EDA$(SO)
710 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(DESTLIBDIR)/$(LP)EDASQLite$(SO)
711 ifdef EDASQLiteCipher
712 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO)
716 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/$(LP)EcereAudio$(SO)
718 install $(INSTALL_FLAGS) $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
719 install $(INSTALL_FLAGS) $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
720 install $(INSTALL_FLAGS) $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
721 install $(INSTALL_FLAGS) $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
722 install $(INSTALL_FLAGS) $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
723 install $(INSTALL_FLAGS) $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
724 install $(INSTALL_FLAGS) $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
726 install $(INSTALL_FLAGS) $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
728 install $(INSTALL_FLAGS) $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/libecereVanilla$(A)
730 install $(INSTALL_FLAGS) -d $(DOCDIR)
732 install $(INSTALL_FLAGS) -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
733 install $(INSTALL_FLAGS) -m 644 doc/tao.pdf $(DOCDIR)/"Ecere Tao of Programming [work in progress].pdf" >/dev/null 2>&1 || echo "The Ecere Tao of Programming is available at http://ecere.com/tao.pdf"
734 install $(INSTALL_FLAGS) -m 644 doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
735 install $(INSTALL_FLAGS) -m 644 doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
736 install $(INSTALL_FLAGS) -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
737 mkdir -p $(MANDIR)/man1
738 cp -pRf share/man/man1/* $(MANDIR)/man1
739 mkdir -p $(SAMPLESDIR)
740 cp -pRf samples/* $(SAMPLESDIR)
741 find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
742 mkdir -p $(EXTRASDIR)
743 cp $(CPFLAGS) extras/* $(EXTRASDIR)
744 chmod 777 $(EXTRASDIR)/audio
746 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecere0
747 install $(INSTALL_FLAG) -m644 NEWS $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
748 gzip -n -f -9 $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
749 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-dev
750 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-dev/
751 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-extras
752 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-extras/
753 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-samples
754 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-samples/
755 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-sdk
756 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-sdk/
757 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecc0
758 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecc0/
759 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecerecom0
760 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecerecom0/
761 mkdir -p $(DESTDIR)$(prefix)/share/doc/libeda0
762 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libeda0/
763 mkdir -p $(DESTDIR)$(prefix)/share/doc/libedasqlite0
764 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libedasqlite0/
765 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecereaudio0
766 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecereaudio0/
772 $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SO)")
773 $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO)")
774 $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SO)")
775 $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SO)")
776 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SO)")
777 ifdef EDASQLiteCipher
778 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO)")
781 $(call rmq,"$(DESTLIBDIR)/$(LP)EcereAudio$(SO)")
783 $(call rmq,"$(BINDIR)/ide$(E)")
784 $(call rmq,"$(BINDIR)/ear$(E)")
785 $(call rmq,"$(BINDIR)/ecc$(E)")
786 $(call rmq,"$(BINDIR)/ecp$(E)")
787 $(call rmq,"$(BINDIR)/ecs$(E)")
788 $(call rmq,"$(BINDIR)/epj2make$(E)")
789 $(call rmq,"$(BINDIR)/documentor$(E)")
791 $(call rmq,"$(BINDIR)/CodeGuard$(E)")
793 $(call rmq,"$(DESTSLIBDIR)/libecereVanilla$(A)")
794 $(call rmq,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
795 $(call rmq,"$(DOCDIR)/ecere.eCdoc")
796 $(call rmq,"$(DOCDIR)/ecereCOM.eCdoc")
797 $(call rmq,"$(DOCDIR)/EDA.eCdoc")
799 $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SO).0")
800 $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO).0")
801 $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SO).0")
802 $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SO).0")
803 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SO).0")
804 ifdef EDASQLiteCipher
805 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO).0")
807 $(call rmq,"$(DESTLIBDIR)/$(LP)EcereaAudio$(SO).0")
808 $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SOV)")
809 $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SOV)")
810 $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SOV)")
811 $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SOV)")
812 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SOV)")
813 ifdef EDASQLiteCipher
814 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SOV)")
817 $(call rmq,"$(DESTLIBDIR)/$(LP)EcereAudio$(SOV)")
819 $(call rmq,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
820 $(call rmq,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
822 $(call rmdirq,"$(BINDIR)/")
823 $(call rmdirq,"$(DESTLIBDIR)/")
824 $(call rmdirq,"$(DESTSLIBDIR)/")
825 $(call rmdirq,"$(DOCDIR)/")
827 $(call rmdirq,"$(DESTDIR)/")
829 @$(call echo,The Ecere SDK has been uninstalled.)
831 regenbootstrap: update_ecere update_libec update_ecp update_ecc update_ecs
832 @echo Bootstrap regenerated.
834 updatebootstrap: regenbootstrap
835 @echo Copying files...
836 $(call cpq,ecere/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecere/bootstrap)
837 $(call cpq,compiler/libec/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/libec/bootstrap)
838 $(call cpq,compiler/ecp/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecp/bootstrap)
839 $(call cpq,compiler/ecc/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecc/bootstrap)
840 $(call cpq,compiler/ecs/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecs/bootstrap)
841 @echo Bootstrap updated.
844 @echo Regenerating ecere bootstrapper...
845 cd ecere && $(MAKE) -f Makefile.bootstrap clean
846 cd ecere && $(MAKE) -f Makefile.bootstrap
849 @echo Regenerating ec bootstrapper...
850 cd compiler/libec && $(MAKE) -f Makefile.bootstrap clean
851 cd compiler/libec && $(MAKE) -f Makefile.bootstrap
854 @echo Regenerating ecp bootstrapper...
855 cd compiler/ecp && $(MAKE) -f Makefile.bootstrap clean
856 cd compiler/ecp && $(MAKE) -f Makefile.bootstrap
859 @echo Regenerating ecc bootstrapper...
860 cd compiler/ecc && $(MAKE) -f Makefile.bootstrap clean
861 cd compiler/ecc && $(MAKE) -f Makefile.bootstrap
864 @echo Regenerating ecs bootstrapper...
865 cd compiler/ecs && $(MAKE) -f Makefile.bootstrap clean
866 cd compiler/ecs && $(MAKE) -f Makefile.bootstrap
869 @$(call echo,Printing values of some variables.)
870 @$(call echo,HOST_PLATFORM=$(HOST_PLATFORM))
871 @$(call echo,TARGET_PLATFORM=$(TARGET_PLATFORM))
872 @$(call echo,PLATFORM=$(PLATFORM))
873 @$(call echo,LINUX_HOST=$(LINUX_HOST))
874 @$(call echo,LINUX_TARGET=$(LINUX_TARGET))
875 @$(call echo,OSX_HOST=$(OSX_HOST))
876 @$(call echo,OSX_TARGET=$(OSX_TARGET))
877 @$(call echo,WINDOWS_HOST=$(WINDOWS_HOST))
878 @$(call echo,WINDOWS_TARGET=$(WINDOWS_TARGET))
879 @$(call echo,BSD_HOST=$(BSD_HOST))
880 @$(call echo,BSD_TARGET=$(BSD_TARGET))
881 @$(call echo,CCACHE=$(CCACHE))
882 @$(call echo,CCACHE_COMPILE=$(CCACHE_COMPILE))
883 @$(call echo,CCACHE_PREFIX=$(CCACHE_PREFIX))
884 @$(call echo,DISTCC=$(DISTCC))
885 @$(call echo,GCC_PREFIX=$(GCC_PREFIX))
886 @$(call echo,CC=$(CC))
887 @$(call echo,CPP=$(CPP))
888 @$(call echo,ECP=$(ECP))
889 @$(call echo,ECC=$(ECC))
890 @$(call echo,ECS=$(ECS))
891 @$(call echo,EAR=$(EAR))
892 @$(call echo,AS=$(AS))
893 @$(call echo,LD=$(LD))
894 @$(call echo,AR=$(AR))
895 @$(call echo,STRIP=$(STRIP))
896 @$(call echo,UPX=$(UPX))
897 @$(call echo,TARGET_ARCH=$(TARGET_ARCH))
898 @$(call echo,DESTDIR=$(DESTDIR))
899 @$(call echo,PREFIXLIBDIR=$(PREFIXLIBDIR))
900 @$(call echo,ARCH=$(ARCH))
901 @$(call echo,ARCH_FLAGS=$(ARCH_FLAGS))
902 @$(call echo,GIT_REPOSITORY=$(GIT_REPOSITORY))
903 @$(call echo,DIR_VER=$(DIR_VER))
904 @$(call echo,REPOSITORY_VER=$(REPOSITORY_VER))
905 @$(call echo,CPPFLAGS=$(CPPFLAGS))