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 portable
6 include crossplatform.mk
17 XBOOT := $(if $(CROSS_TARGET),GCC_PREFIX= TARGET_PLATFORM=$(HOST_PLATFORM) PLATFORM=$(HOST_PLATFORM),)
36 HOST_SOV := $(HOST_SO)
38 HOST_SOV := $(HOST_SO)$(LIBVER)
47 ifeq ($(TARGET_ARCH),x86_64)
48 ifneq ($(wildcard $(SystemDrive)/Program\ Files ),)
49 export DESTDIR=$(SystemDrive)/Program Files/Ecere SDK
51 export DESTDIR=$(SystemDrive)/Ecere SDK
54 ifdef ProgramFiles(x86)
55 export DESTDIR=${ProgramFiles(x86)}/Ecere SDK
58 export DESTDIR=$(ProgramFiles)/Ecere SDK
60 export DESTDIR=$(SystemDrive)/Ecere SDK
70 export DOCDIR=$(DESTDIR)$(prefix)/doc
74 export BINDIR=$(DESTDIR)$(prefix)/bin
78 export LIBDIR=$(BINDIR)
80 export DESTLIBDIR=$(LIBDIR)
83 export SLIBDIR=$(DESTDIR)$(prefix)/lib
85 export DESTSLIBDIR=$(SLIBDIR)
88 export SAMPLESDIR=$(DESTDIR)$(prefix)/samples
92 export EXTRASDIR=$(DESTDIR)$(prefix)/extras
102 SOV := $(SO)$(LIBVER)
114 export DOCDIR=$(DESTDIR)$(prefix)/share/ecere/doc
118 export MANDIR=$(DESTDIR)$(prefix)/share/man/
122 export BINDIR=$(DESTDIR)$(prefix)/bin
126 export PREFIXLIBDIR=$(LIBDIR)
128 export PREFIXLIBDIR=$(prefix)/lib/$(TARGET_ARCH)
130 ifeq ($(wildcard $(prefix)/lib/$(TARGET_ARCH) ),)
131 export PREFIXLIBDIR=$(prefix)/lib
133 ifeq ($(TARGET_ARCH),i386-linux-gnu)
134 ifneq ($(wildcard $(prefix)/lib32 ),)
135 export PREFIXLIBDIR=$(prefix)/lib32
143 CPPFLAGS += -DDEB_HOST_MULTIARCH=\"$(call escspace,$(PREFIXLIBDIR))\"
145 DESTLIBDIR := $(DESTDIR)$(PREFIXLIBDIR)
147 DESTSLIBDIR := $(DESTDIR)$(SLIBDIR)
149 DESTSLIBDIR := $(DESTLIBDIR)
153 export SAMPLESDIR=$(DESTDIR)$(prefix)/share/ecere/samples
157 export EXTRASDIR=$(DESTDIR)$(prefix)/share/ecere/extras
163 OBJDIR := obj$(OBJALT)/
164 OBJBINDIR := $(OBJDIR)$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/
165 OBJLIBDIR := $(OBJDIR)$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/
166 XOBJDIR := obj$(OBJALT)/
167 XOBJBINDIR := $(OBJDIR)$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/
168 XOBJLIBDIR := $(OBJDIR)$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/
170 all: prepbinaries ide epj2make documentor eda codeguard ecereaudio
171 @$(call echo,The Ecere SDK is fully built.)
174 $(if $(wildcard $(OBJDIR)),,$(call mkdirq,$(OBJDIR)))
175 $(if $(wildcard $(OBJBINDIR)),,$(call mkdirq,$(OBJBINDIR)))
176 $(if $(wildcard $(OBJLIBDIR)),,$(call mkdirq,$(OBJLIBDIR)))
178 $(if $(wildcard $(XOBJDIR)),,$(call mkdirq,$(XOBJDIR)))
179 $(if $(wildcard $(XOBJBINDIR)),,$(call mkdirq,$(XOBJBINDIR)))
180 $(if $(wildcard $(XOBJLIBDIR)),,$(call mkdirq,$(XOBJLIBDIR)))
183 bootstrap: outputdirs
184 cd compiler && $(MAKE) $(XBOOT) bootstrap
189 @$(call echo,Building dependencies (host)...)
190 cd deps && $(MAKE) $(XBOOT)
194 @$(call echo,Building dependencies...)
198 ecere: bootstrap deps
200 @$(call echo,Building 2nd stage ecere (host)...)
202 @$(call echo,Building 2nd stage ecere...)
204 cd ecere && $(MAKE) nores $(XBOOT)
205 cd ear && $(MAKE) nores $(XBOOT)
206 cd ecere && $(MAKE) cleaneceretarget
208 @$(call echo,Building 2nd stage ecere...)
214 @$(call echo,Building eC Core Runtime (host)...)
215 cd ecere && $(MAKE) -f Makefile.ecereCOM $(XBOOT)
217 @$(call echo,Building eC Core Runtime...)
218 cd ecere && $(MAKE) -f Makefile.ecereCOM
220 ecerevanilla: bootstrap
221 @$(call echo,Building Vanilla Ecere...)
222 cd ecere && $(MAKE) -f Makefile.vanilla
224 ear: ecere ecerevanilla
225 @$(call echo,Building ear...)
226 cd ear && cd cmd && $(MAKE) cleantarget
230 cd compiler && $(MAKE) fixprecompile
234 @$(call echo,Building 2nd stage compiler (host))
235 cd compiler && $(MAKE) $(XBOOT)
237 @$(call echo,Building 2nd stage compiler)
238 cd compiler && $(MAKE)
240 prepbinaries: compiler ecerecom
241 @$(call echo,Enabling 2nd stage binaries...)
243 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJBINDIR))
244 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
245 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJBINDIR))
248 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
249 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
250 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
251 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
252 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
253 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
254 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
255 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
256 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
258 ifndef WINDOWS_TARGET
260 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
261 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
262 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
265 $(call cpq,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
266 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
267 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
268 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
273 $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJBINDIR))
274 $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJBINDIR))
275 $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJBINDIR))
278 $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJLIBDIR))
279 $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJLIBDIR))
280 $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJLIBDIR))
281 ln -sf $(HOST_LP)ecere$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecere$(HOST_SO).0
282 ln -sf $(HOST_LP)ecereCOM$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecereCOM$(HOST_SO).0
283 ln -sf $(HOST_LP)ec$(HOST_SOV) $(XOBJLIBDIR)$(LP)ec$(HOST_SO).0
284 ln -sf $(HOST_LP)ecere$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecere$(HOST_SO)
285 ln -sf $(HOST_LP)ecereCOM$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecereCOM$(HOST_SO)
286 ln -sf $(HOST_LP)ec$(HOST_SOV) $(XOBJLIBDIR)$(LP)ec$(HOST_SO)
290 $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SO),$(XOBJLIBDIR))
291 $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SO),$(XOBJLIBDIR))
292 $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SO),$(XOBJLIBDIR))
295 $(call cpq,ear/cmd/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(HOST_E),$(XOBJBINDIR))
296 $(call cpq,compiler/ecc/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(HOST_E),$(XOBJBINDIR))
297 $(call cpq,compiler/ecp/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(HOST_E),$(XOBJBINDIR))
298 $(call cpq,compiler/ecs/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(HOST_E),$(XOBJBINDIR))
302 epj2make: prepbinaries
303 @$(call echo,Building epj2make...)
304 cd epj2make && $(MAKE)
306 ecereaudio: prepbinaries
307 ifneq ($(ECERE_AUDIO),n)
308 @$(call echo,Building EcereAudio...)
313 @$(call echo,Building IDE...)
316 documentor: prepbinaries
317 @$(call echo,Building Documentor...)
318 cd documentor && $(MAKE)
320 codeguard: prepcodeguard
322 @$(call echo,Building CodeGuard client...)
323 cd codeGuard && $(MAKE)
329 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
333 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
334 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
335 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
338 ifndef WINDOWS_TARGET
340 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
347 @$(call echo,Building EDA (host))
348 cd eda && $(MAKE) $(XBOOT)
350 @$(call echo,Building EDA...)
353 emptyoutput: outputdirs
354 $(call rmq,$(OBJLIBDIR)libecereVanilla$(A))
355 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO))
356 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO))
357 $(call rmq,$(SODESTDIR)$(LP)ec$(SO))
358 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO))
359 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO))
360 ifdef EDASQLiteCipher
361 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO))
363 ifneq ($(ECERE_AUDIO),n)
364 $(call rmq,$(SODESTDIR)$(LP)EcereAudio$(SO))
367 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO).0)
368 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO).0)
369 $(call rmq,$(SODESTDIR)$(LP)ec$(SO).0)
370 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO).0)
371 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO).0)
372 ifdef EDASQLiteCipher
373 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO).0)
375 ifneq ($(ECERE_AUDIO),n)
376 $(call rmq,$(SODESTDIR)$(LP)EcereAudio$(SO).0)
378 $(call rmq,$(SODESTDIR)$(LP)ecere$(SOV))
379 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SOV))
380 $(call rmq,$(SODESTDIR)$(LP)ec$(SOV))
381 $(call rmq,$(SODESTDIR)$(LP)EDA$(SOV))
382 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SOV))
383 ifdef EDASQLiteCipher
384 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SOV))
386 ifneq ($(ECERE_AUDIO),n)
387 $(call rmq,$(SODESTDIR)$(LP)EcereAudio$(SOV))
390 $(call rmq,$(OBJBINDIR)ear$(E))
391 $(call rmq,$(OBJBINDIR)ecc$(E))
392 $(call rmq,$(OBJBINDIR)ecp$(E))
393 $(call rmq,$(OBJBINDIR)ecs$(E))
394 $(call rmq,$(OBJBINDIR)epj2make$(E))
395 $(call rmq,$(OBJBINDIR)ide$(E))
396 $(call rmq,$(OBJBINDIR)documentor$(E))
398 $(call rmq,$(OBJBINDIR)CodeGuard$(E))
402 cd compiler && $(MAKE) cleantarget
403 cd documentor && $(MAKE) cleantarget
404 cd ear && $(MAKE) cleantarget
405 cd ecere && $(MAKE) cleantarget
406 cd eda && $(MAKE) cleantarget
407 cd epj2make && $(MAKE) cleantarget
408 cd ide && $(MAKE) cleantarget
409 cd installer && $(MAKE) cleantarget
410 ifneq ($(ECERE_AUDIO),n)
411 cd audio && $(MAKE) cleantarget
416 cd installer && $(MAKE) OUTPUT_POT=1 pots
420 $(MAKE) prepinstall ARCH=
421 $(MAKE) prepinstall ARCH=x32
422 @$(call echo,Building Ecere runtime for installer...)
423 cd ecere && @$(MAKE) -f Makefile.installer ARCH=x32
424 @$(call echo,Building Installer for Windows...)
425 cd installer && @$(MAKE) ARCH=x32
426 @$(call echo,The Ecere SDK Windows Installer is fully built.)
429 $(MAKE) prepinstall ARCH=
430 $(MAKE) prepinstall ARCH=x32
431 @$(call echo,Preparing portable Ecere SDK...)
432 cd portable && @$(MAKE) ARCH=x32
437 cd deps && $(MAKE) clean
439 cd ecere && $(MAKE) clean
440 cd compiler && $(MAKE) clean
441 cd ear && $(MAKE) clean
442 cd epj2make && $(MAKE) clean
443 cd ide && $(MAKE) clean
444 cd documentor && $(MAKE) clean
445 ifneq ($(ECERE_AUDIO),n)
446 cd audio && $(MAKE) clean
449 cd codeGuard && $(MAKE) clean
451 cd eda && $(MAKE) clean
454 realclean: outputdirs
456 cd deps && $(MAKE) realclean
458 cd ecere && $(MAKE) realclean
459 cd compiler && $(MAKE) realclean
460 cd ear && $(MAKE) realclean
461 cd epj2make && $(MAKE) realclean
462 cd ide && $(MAKE) realclean
463 cd documentor && $(MAKE) realclean
464 ifneq ($(ECERE_AUDIO),n)
465 cd audio && $(MAKE) realclan
468 cd codeGuard && $(MAKE) realclean
470 cd eda && $(MAKE) realclean
471 $(call rmrq,obj/$(PLATFORM)/)
474 distclean: outputdirs
476 cd deps && $(MAKE) distclean
478 cd ecere && $(MAKE) distclean
479 cd compiler && $(MAKE) distclean
480 cd ear && $(MAKE) distclean
481 cd epj2make && $(MAKE) distclean
482 cd ide && $(MAKE) distclean
483 cd documentor && $(MAKE) distclean
484 ifneq ($(ECERE_AUDIO),n)
485 cd audio && $(MAKE) distclean
488 cd codeGuard && $(MAKE) distclean
490 cd eda && $(MAKE) distclean
494 DOC = doc/ecere.eCdoc doc/ecereCOM.eCdoc doc/EDA.eCdoc
497 ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV) \
498 ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV) \
499 ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A) \
500 compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV) \
501 compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E) \
502 compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E) \
503 compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E) \
504 ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E) \
505 epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E) \
506 documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E) \
507 ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E) \
508 eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV) \
509 eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV)
511 ifneq ($(ECERE_AUDIO),n)
512 BINARIES += audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SOV)
516 BINARIES += codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E)
519 ifdef EDASQLiteCipher
520 BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV)
523 # Making sure everything is in $(OBJBINDIR) and $(OBJLIBDIR)
524 # Shared Libraries (in $(OBJBINDIR) on Windows and $(OBJLIBDIR) otherwise)
525 # Symlinks for libs on Linux
526 # Binaries (always in $(OBJBINDIR)) and Static Libraries (always in $(OBJLIBDIR))
527 prepinstall: $(DOC) $(BINARIES) outputdirs
530 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJBINDIR))
531 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
532 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJBINDIR))
533 $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJBINDIR))
534 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
535 ifneq ($(ECERE_AUDIO),n)
536 $(call cpq,audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SO),$(OBJBINDIR))
538 ifdef EDASQLiteCipher
539 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
544 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
545 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
546 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
547 $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV),$(OBJLIBDIR))
548 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
549 ifneq ($(ECERE_AUDIO),n)
550 $(call cpq,audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SOV),$(OBJLIBDIR))
552 ifdef EDASQLiteCipher
553 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
555 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
556 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
557 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
558 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
559 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO).0
560 ifdef EDASQLiteCipher
561 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO).0
563 ifneq ($(ECERE_AUDIO),n)
564 ln -sf $(LP)EcereAudio$(SOV) $(OBJLIBDIR)$(LP)EcereAudio$(SO).0
567 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
568 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
569 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
570 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
571 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO)
572 ifdef EDASQLiteCipher
573 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO)
575 ln -sf $(LP)EcereAudio$(SOV) $(OBJLIBDIR)$(LP)EcereAudio$(SO)
578 ifndef WINDOWS_TARGET
580 $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
581 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
582 $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
583 $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJLIBDIR))
584 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
585 ifneq ($(ECERE_AUDIO),n)
586 $(call cpq,audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SO),$(OBJLIBDIR))
588 ifdef EDASQLiteCipher
589 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
594 $(call cpq,ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E),$(OBJBINDIR))
595 $(call cpq,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
596 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
597 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
598 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
599 $(call cpq,epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E),$(OBJBINDIR))
600 $(call cpq,documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E),$(OBJBINDIR))
602 $(call cpq,codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E),$(OBJBINDIR))
604 $(call cpq,ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A),$(OBJLIBDIR))
607 install: prepinstall actualinstall
608 @$(call echo,The Ecere SDK has been installed.)
610 copyonlyinstall: actualinstall
611 @$(call echo,The Ecere SDK has been installed. copyonlyinstall.)
615 $(call mkdirq,"$(BINDIR)/")
616 $(call mkdirq,"$(DESTSLIBDIR)/")
617 $(call mkdirq,"$(DOCDIR)/")
618 $(call cpq,$(OBJBINDIR)$(LP)ecere$(SO),"$(DESTLIBDIR)/")
619 $(call cpq,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(DESTLIBDIR)/")
620 $(call cpq,$(OBJBINDIR)$(LP)ec$(SO),"$(DESTLIBDIR)/")
621 $(call cpq,$(OBJBINDIR)$(LP)EDA$(SO),"$(DESTLIBDIR)/")
622 $(call cpq,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(DESTLIBDIR)/")
623 ifdef EDASQLiteCipher
624 $(call cpq,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(DESTLIBDIR)/")
626 ifneq ($(ECERE_AUDIO),n)
627 $(call cpq,$(OBJBINDIR)$(LP)EcereAudio$(SO),"$(DESTLIBDIR)/")
629 $(call cpq,$(OBJBINDIR)ide$(E),"$(BINDIR)/")
630 $(call cpq,$(OBJBINDIR)ear$(E),"$(BINDIR)/")
631 $(call cpq,$(OBJBINDIR)ecc$(E),"$(BINDIR)/")
632 $(call cpq,$(OBJBINDIR)ecp$(E),"$(BINDIR)/")
633 $(call cpq,$(OBJBINDIR)ecs$(E),"$(BINDIR)/")
634 $(call cpq,$(OBJBINDIR)epj2make$(E),"$(BINDIR)/")
635 $(call cpq,$(OBJBINDIR)documentor$(E),"$(BINDIR)/")
637 $(call cpq,$(OBJBINDIR)CodeGuard$(E),"$(BINDIR)/")
639 $(call cpq,$(OBJLIBDIR)libecereVanilla$(A),"$(DESTSLIBDIR)/")
640 $(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"
641 $(call cpq,doc/ecere.eCdoc,"$(DOCDIR)/")
642 $(call cpq,doc/ecereCOM.eCdoc,"$(DOCDIR)/")
643 $(call cpq,doc/EDA.eCdoc,"$(DOCDIR)/")
647 install $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/
648 install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/
649 install $(OBJLIBDIR)$(LP)ec$(SO) $(DESTLIBDIR)/
650 install $(OBJLIBDIR)$(LP)EDA$(SO) $(DESTLIBDIR)/
651 install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(DESTLIBDIR)/
652 ifdef EDASQLiteCipher
653 install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(DESTLIBDIR)/
655 ifneq ($(ECERE_AUDIO),n)
656 install $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/
658 install $(OBJBINDIR)ide$(E) $(BINDIR)/
659 install $(OBJBINDIR)ear$(E) $(BINDIR)/
660 install $(OBJBINDIR)ecc$(E) $(BINDIR)/
661 install $(OBJBINDIR)ecp$(E) $(BINDIR)/
662 install $(OBJBINDIR)ecs$(E) $(BINDIR)/
663 install $(OBJBINDIR)epj2make$(E) $(BINDIR)/
664 install $(OBJBINDIR)documentor$(E) $(BINDIR)/
666 install $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/
668 install $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/
669 install -d $(DOCDIR)/
670 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"
671 install doc/ecere.eCdoc $(DOCDIR)/
672 install doc/ecereCOM.eCdoc $(DOCDIR)/
673 install doc/EDA.eCdoc $(DOCDIR)/
674 mkdir -p $(MANDIR)/man1
675 cp -pRf share/man/man1/* $(MANDIR)/man1
676 mkdir -p $(SAMPLESDIR)
677 cp -pRf samples/* $(SAMPLESDIR)
678 find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
679 mkdir -p $(EXTRASDIR)
680 cp -pRf extras/* $(EXTRASDIR)
684 ifndef WINDOWS_TARGET
686 mkdir -p $(DESTLIBDIR)/ec
687 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SOV)
688 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SOV)
689 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SOV)
690 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SOV)
691 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SOV)
692 ifdef EDASQLiteCipher
693 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SOV)
695 ifneq ($(ECERE_AUDIO),n)
696 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SOV)
698 ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO).0
699 ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO).0
700 ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO).0
701 ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO).0
702 ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO).0
703 ifdef EDASQLiteCipher
704 ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO).0
706 ifneq ($(ECERE_AUDIO),n)
707 ln -sf $(LP)EcereAudio$(SOV) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO).0
709 ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO)
710 ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
711 ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO)
712 ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO)
713 ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO)
714 ln -sf ../$(LP)ecere$(SOV) $(DESTLIBDIR)/ec/$(LP)ecere$(SO)
715 ln -sf ../$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/ec/$(LP)ecereCOM$(SO)
716 ifdef EDASQLiteCipher
717 ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO)
719 ifneq ($(ECERE_AUDIO),n)
720 ln -sf $(LP)EcereAudio$(SOV) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO)
723 install $(INSTALL_FLAGS) -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
724 install $(INSTALL_FLAGS) -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
727 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/$(LP)ecere$(SO)
728 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
730 install $(INSTALL_FLAGS) $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
731 install $(INSTALL_FLAGS) $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
732 install $(INSTALL_FLAGS) $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
733 install $(INSTALL_FLAGS) $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
734 install $(INSTALL_FLAGS) $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
735 install $(INSTALL_FLAGS) $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
736 install $(INSTALL_FLAGS) $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
738 install $(INSTALL_FLAGS) $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
740 install $(INSTALL_FLAGS) $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/libecereVanilla$(A)
742 install $(INSTALL_FLAGS) -d $(DOCDIR)
744 install $(INSTALL_FLAGS) -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
745 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"
746 install $(INSTALL_FLAGS) -m 644 doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
747 install $(INSTALL_FLAGS) -m 644 doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
748 install $(INSTALL_FLAGS) -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
749 mkdir -p $(MANDIR)/man1
750 cp -pRf share/man/man1/* $(MANDIR)/man1
751 mkdir -p $(SAMPLESDIR)
752 cp -pRf samples/* $(SAMPLESDIR)
753 find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
754 mkdir -p $(EXTRASDIR)
755 cp $(CPFLAGS) extras/* $(EXTRASDIR)
757 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecere0
758 install $(INSTALL_FLAG) -m644 NEWS $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
759 gzip -n -f -9 $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
760 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-dev
761 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-dev/
762 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-extras
763 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-extras/
764 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-samples
765 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-samples/
766 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-sdk
767 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-sdk/
768 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecc0
769 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecc0/
770 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecerecom0
771 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecerecom0/
772 mkdir -p $(DESTDIR)$(prefix)/share/doc/libeda0
773 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libeda0/
774 mkdir -p $(DESTDIR)$(prefix)/share/doc/libedasqlite0
775 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libedasqlite0/
776 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecereaudio0
777 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecereaudio0/
783 $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SO)")
784 $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO)")
785 $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SO)")
786 $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SO)")
788 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO)")
789 ifdef EDASQLiteCipher
790 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO)")
792 ifneq ($(ECERE_AUDIO),n)
793 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO)")
796 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SO)")
797 ifdef EDASQLiteCipher
798 $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO)")
800 ifneq ($(ECERE_AUDIO),n)
801 $(call rmq,"$(DESTLIBDIR)/$(LP)EcereAudio$(SO)")
804 $(call rmq,"$(BINDIR)/ide$(E)")
805 $(call rmq,"$(BINDIR)/ear$(E)")
806 $(call rmq,"$(BINDIR)/ecc$(E)")
807 $(call rmq,"$(BINDIR)/ecp$(E)")
808 $(call rmq,"$(BINDIR)/ecs$(E)")
809 $(call rmq,"$(BINDIR)/epj2make$(E)")
810 $(call rmq,"$(BINDIR)/documentor$(E)")
812 $(call rmq,"$(BINDIR)/CodeGuard$(E)")
814 $(call rmq,"$(DESTSLIBDIR)/libecereVanilla$(A)")
815 $(call rmq,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
816 $(call rmq,"$(DOCDIR)/ecere.eCdoc")
817 $(call rmq,"$(DOCDIR)/ecereCOM.eCdoc")
818 $(call rmq,"$(DOCDIR)/EDA.eCdoc")
820 $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SO).0")
821 $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO).0")
822 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)ec$(SO).0")
823 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDA$(SO).0")
824 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO).0")
825 ifdef EDASQLiteCipher
826 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO).0")
828 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EcereaAudio$(SO).0")
829 $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SOV)")
830 $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SOV)")
831 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)ec$(SOV)")
832 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDA$(SOV)")
833 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDASQLite$(SOV)")
834 ifdef EDASQLiteCipher
835 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SOV)")
837 ifneq ($(ECERE_AUDIO),n)
838 $(call rmq,"$(DESTLIBDIR)/ec/$(LP)EcereAudio$(SOV)")
840 $(call rmq,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
841 $(call rmq,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
843 $(call rmdirq,"$(BINDIR)/")
844 $(call rmdirq,"$(DESTLIBDIR)/")
845 $(call rmdirq,"$(DESTSLIBDIR)/")
846 $(call rmdirq,"$(DOCDIR)/")
848 $(call rmdirq,"$(DESTDIR)/")
850 @$(call echo,The Ecere SDK has been uninstalled.)
852 regenbootstrap: update_ecere update_libec update_ecp update_ecc update_ecs
853 @echo Bootstrap regenerated.
855 updatebootstrap: regenbootstrap
856 @echo Copying files...
857 $(call cpq,ecere/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecere/bootstrap)
858 $(call cpq,compiler/libec/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/libec/bootstrap)
859 $(call cpq,compiler/ecp/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecp/bootstrap)
860 $(call cpq,compiler/ecc/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecc/bootstrap)
861 $(call cpq,compiler/ecs/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecs/bootstrap)
862 @echo Bootstrap updated.
865 @echo Regenerating ecere bootstrapper...
866 cd ecere && $(MAKE) -f Makefile.bootstrap clean
867 cd ecere && $(MAKE) -f Makefile.bootstrap
870 @echo Regenerating ec bootstrapper...
871 cd compiler/libec && $(MAKE) -f Makefile.bootstrap clean
872 cd compiler/libec && $(MAKE) -f Makefile.bootstrap
875 @echo Regenerating ecp bootstrapper...
876 cd compiler/ecp && $(MAKE) -f Makefile.bootstrap clean
877 cd compiler/ecp && $(MAKE) -f Makefile.bootstrap
880 @echo Regenerating ecc bootstrapper...
881 cd compiler/ecc && $(MAKE) -f Makefile.bootstrap clean
882 cd compiler/ecc && $(MAKE) -f Makefile.bootstrap
885 @echo Regenerating ecs bootstrapper...
886 cd compiler/ecs && $(MAKE) -f Makefile.bootstrap clean
887 cd compiler/ecs && $(MAKE) -f Makefile.bootstrap
890 @$(call echo,Printing values of some variables.)
891 @$(call echo,HOST_PLATFORM=$(HOST_PLATFORM))
892 @$(call echo,TARGET_PLATFORM=$(TARGET_PLATFORM))
893 @$(call echo,PLATFORM=$(PLATFORM))
894 @$(call echo,LINUX_HOST=$(LINUX_HOST))
895 @$(call echo,LINUX_TARGET=$(LINUX_TARGET))
896 @$(call echo,OSX_HOST=$(OSX_HOST))
897 @$(call echo,OSX_TARGET=$(OSX_TARGET))
898 @$(call echo,WINDOWS_HOST=$(WINDOWS_HOST))
899 @$(call echo,WINDOWS_TARGET=$(WINDOWS_TARGET))
900 @$(call echo,BSD_HOST=$(BSD_HOST))
901 @$(call echo,BSD_TARGET=$(BSD_TARGET))
902 @$(call echo,CCACHE=$(CCACHE))
903 @$(call echo,CCACHE_COMPILE=$(CCACHE_COMPILE))
904 @$(call echo,CCACHE_PREFIX=$(CCACHE_PREFIX))
905 @$(call echo,DISTCC=$(DISTCC))
906 @$(call echo,GCC_PREFIX=$(GCC_PREFIX))
907 @$(call echo,CC=$(CC))
908 @$(call echo,CPP=$(CPP))
909 @$(call echo,ECP=$(ECP))
910 @$(call echo,ECC=$(ECC))
911 @$(call echo,ECS=$(ECS))
912 @$(call echo,EAR=$(EAR))
913 @$(call echo,AS=$(AS))
914 @$(call echo,LD=$(LD))
915 @$(call echo,AR=$(AR))
916 @$(call echo,STRIP=$(STRIP))
917 @$(call echo,UPX=$(UPX))
918 @$(call echo,TARGET_ARCH=$(TARGET_ARCH))
919 @$(call echo,DESTDIR=$(DESTDIR))
920 @$(call echo,PREFIXLIBDIR=$(PREFIXLIBDIR))
921 @$(call echo,ARCH=$(ARCH))
922 @$(call echo,ARCH_FLAGS=$(ARCH_FLAGS))
923 @$(call echo,GIT_REPOSITORY=$(GIT_REPOSITORY))
924 @$(call echo,DIR_VER=$(DIR_VER))
925 @$(call echo,REPOSITORY_VER=$(REPOSITORY_VER))
926 @$(call echo,CPPFLAGS=$(CPPFLAGS))