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),)
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 mkdir,$(OBJDIR)))
175 $(if $(wildcard $(OBJBINDIR)),,$(call mkdir,$(OBJBINDIR)))
176 $(if $(wildcard $(OBJLIBDIR)),,$(call mkdir,$(OBJLIBDIR)))
178 $(if $(wildcard $(XOBJDIR)),,$(call mkdir,$(XOBJDIR)))
179 $(if $(wildcard $(XOBJBINDIR)),,$(call mkdir,$(XOBJBINDIR)))
180 $(if $(wildcard $(XOBJLIBDIR)),,$(call mkdir,$(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 cp,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJBINDIR))
244 $(call cp,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
245 $(call cp,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJBINDIR))
248 $(call cp,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
249 $(call cp,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
250 $(call cp,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 cp,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
261 $(call cp,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
262 $(call cp,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
265 $(call cp,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
266 $(call cp,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
267 $(call cp,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
268 $(call cp,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
273 $(call cp,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJBINDIR))
274 $(call cp,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJBINDIR))
275 $(call cp,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJBINDIR))
278 $(call cp,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJLIBDIR))
279 $(call cp,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJLIBDIR))
280 $(call cp,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 cp,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SO),$(XOBJLIBDIR))
291 $(call cp,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SO),$(XOBJLIBDIR))
292 $(call cp,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SO),$(XOBJLIBDIR))
295 $(call cp,ear/cmd/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(HOST_E),$(XOBJBINDIR))
296 $(call cp,compiler/ecc/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(HOST_E),$(XOBJBINDIR))
297 $(call cp,compiler/ecp/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(HOST_E),$(XOBJBINDIR))
298 $(call cp,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 cp,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
333 $(call cp,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 cp,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 rm,$(OBJLIBDIR)libecereVanilla$(A))
355 $(call rm,$(SODESTDIR)$(LP)ecere$(SO))
356 $(call rm,$(SODESTDIR)$(LP)ecereCOM$(SO))
357 $(call rm,$(SODESTDIR)$(LP)ec$(SO))
358 $(call rm,$(SODESTDIR)$(LP)EDA$(SO))
359 $(call rm,$(SODESTDIR)$(LP)EDASQLite$(SO))
360 ifdef EDASQLiteCipher
361 $(call rm,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO))
363 ifneq ($(ECERE_AUDIO),n)
364 $(call rm,$(SODESTDIR)$(LP)EcereAudio$(SO))
367 $(call rm,$(SODESTDIR)$(LP)ecere$(SO).0)
368 $(call rm,$(SODESTDIR)$(LP)ecereCOM$(SO).0)
369 $(call rm,$(SODESTDIR)$(LP)ec$(SO).0)
370 $(call rm,$(SODESTDIR)$(LP)EDA$(SO).0)
371 $(call rm,$(SODESTDIR)$(LP)EDASQLite$(SO).0)
372 ifdef EDASQLiteCipher
373 $(call rm,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO).0)
375 ifneq ($(ECERE_AUDIO),n)
376 $(call rm,$(SODESTDIR)$(LP)EcereAudio$(SO).0)
378 $(call rm,$(SODESTDIR)$(LP)ecere$(SOV))
379 $(call rm,$(SODESTDIR)$(LP)ecereCOM$(SOV))
380 $(call rm,$(SODESTDIR)$(LP)ec$(SOV))
381 $(call rm,$(SODESTDIR)$(LP)EDA$(SOV))
382 $(call rm,$(SODESTDIR)$(LP)EDASQLite$(SOV))
383 ifdef EDASQLiteCipher
384 $(call rm,$(SODESTDIR)$(LP)EDASQLiteCipher$(SOV))
386 ifneq ($(ECERE_AUDIO),n)
387 $(call rm,$(SODESTDIR)$(LP)EcereAudio$(SOV))
390 $(call rm,$(OBJBINDIR)ear$(E))
391 $(call rm,$(OBJBINDIR)ecc$(E))
392 $(call rm,$(OBJBINDIR)ecp$(E))
393 $(call rm,$(OBJBINDIR)ecs$(E))
394 $(call rm,$(OBJBINDIR)epj2make$(E))
395 $(call rm,$(OBJBINDIR)ide$(E))
396 $(call rm,$(OBJBINDIR)documentor$(E))
398 $(call rm,$(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.)
431 cd deps && $(MAKE) clean
433 cd ecere && $(MAKE) clean
434 cd compiler && $(MAKE) clean
435 cd ear && $(MAKE) clean
436 cd epj2make && $(MAKE) clean
437 cd ide && $(MAKE) clean
438 cd documentor && $(MAKE) clean
439 ifneq ($(ECERE_AUDIO),n)
440 cd audio && $(MAKE) clean
443 cd codeGuard && $(MAKE) clean
445 cd eda && $(MAKE) clean
448 realclean: outputdirs
450 cd deps && $(MAKE) realclean
452 cd ecere && $(MAKE) realclean
453 cd compiler && $(MAKE) realclean
454 cd ear && $(MAKE) realclean
455 cd epj2make && $(MAKE) realclean
456 cd ide && $(MAKE) realclean
457 cd documentor && $(MAKE) realclean
458 ifneq ($(ECERE_AUDIO),n)
459 cd audio && $(MAKE) realclean
462 cd codeGuard && $(MAKE) realclean
464 cd eda && $(MAKE) realclean
465 $(call rmr,obj/$(PLATFORM)/)
468 distclean: outputdirs
470 cd deps && $(MAKE) distclean
472 cd ecere && $(MAKE) distclean
473 cd compiler && $(MAKE) distclean
474 cd ear && $(MAKE) distclean
475 cd epj2make && $(MAKE) distclean
476 cd ide && $(MAKE) distclean
477 cd documentor && $(MAKE) distclean
478 ifneq ($(ECERE_AUDIO),n)
479 cd audio && $(MAKE) distclean
482 cd codeGuard && $(MAKE) distclean
484 cd eda && $(MAKE) distclean
491 ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV) \
492 ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV) \
493 ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A) \
494 compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV) \
495 compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E) \
496 compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E) \
497 compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E) \
498 ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E) \
499 epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E) \
500 documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E) \
501 ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E) \
502 eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV) \
503 eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV)
505 ifneq ($(ECERE_AUDIO),n)
506 BINARIES += audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SOV)
510 BINARIES += codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E)
513 ifdef EDASQLiteCipher
514 BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV)
517 # Making sure everything is in $(OBJBINDIR) and $(OBJLIBDIR)
518 # Shared Libraries (in $(OBJBINDIR) on Windows and $(OBJLIBDIR) otherwise)
519 # Symlinks for libs on Linux
520 # Binaries (always in $(OBJBINDIR)) and Static Libraries (always in $(OBJLIBDIR))
521 prepinstall: $(DOC) $(BINARIES) outputdirs
524 $(call cp,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJBINDIR))
525 $(call cp,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
526 $(call cp,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJBINDIR))
527 $(call cp,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJBINDIR))
528 $(call cp,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
529 ifneq ($(ECERE_AUDIO),n)
530 $(call cp,audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SO),$(OBJBINDIR))
532 ifdef EDASQLiteCipher
533 $(call cp,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
538 $(call cp,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
539 $(call cp,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
540 $(call cp,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
541 $(call cp,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV),$(OBJLIBDIR))
542 $(call cp,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
543 ifneq ($(ECERE_AUDIO),n)
544 $(call cp,audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SOV),$(OBJLIBDIR))
546 ifdef EDASQLiteCipher
547 $(call cp,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
549 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
550 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
551 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
552 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
553 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO).0
554 ifdef EDASQLiteCipher
555 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO).0
557 ifneq ($(ECERE_AUDIO),n)
558 ln -sf $(LP)EcereAudio$(SOV) $(OBJLIBDIR)$(LP)EcereAudio$(SO).0
561 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
562 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
563 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
564 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
565 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO)
566 ifdef EDASQLiteCipher
567 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO)
569 ln -sf $(LP)EcereAudio$(SOV) $(OBJLIBDIR)$(LP)EcereAudio$(SO)
572 ifndef WINDOWS_TARGET
574 $(call cp,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
575 $(call cp,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
576 $(call cp,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
577 $(call cp,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJLIBDIR))
578 $(call cp,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
579 ifneq ($(ECERE_AUDIO),n)
580 $(call cp,audio/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EcereAudio$(SO),$(OBJLIBDIR))
582 ifdef EDASQLiteCipher
583 $(call cp,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
588 $(call cp,ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E),$(OBJBINDIR))
589 $(call cp,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
590 $(call cp,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
591 $(call cp,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
592 $(call cp,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
593 $(call cp,epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E),$(OBJBINDIR))
594 $(call cp,documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E),$(OBJBINDIR))
596 $(call cp,codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E),$(OBJBINDIR))
598 $(call cp,ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A),$(OBJLIBDIR))
601 install: prepinstall actualinstall
602 @$(call echo,The Ecere SDK has been installed.)
604 copyonlyinstall: actualinstall
605 @$(call echo,The Ecere SDK has been installed. copyonlyinstall.)
609 $(call mkdir,"$(BINDIR)/")
610 $(call mkdir,"$(DESTSLIBDIR)/")
611 $(call mkdir,"$(DOCDIR)/")
612 $(call cp,$(OBJBINDIR)$(LP)ecere$(SO),"$(DESTLIBDIR)/")
613 $(call cp,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(DESTLIBDIR)/")
614 $(call cp,$(OBJBINDIR)$(LP)ec$(SO),"$(DESTLIBDIR)/")
615 $(call cp,$(OBJBINDIR)$(LP)EDA$(SO),"$(DESTLIBDIR)/")
616 $(call cp,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(DESTLIBDIR)/")
617 ifdef EDASQLiteCipher
618 $(call cp,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(DESTLIBDIR)/")
620 ifneq ($(ECERE_AUDIO),n)
621 $(call cp,$(OBJBINDIR)$(LP)EcereAudio$(SO),"$(DESTLIBDIR)/")
623 $(call cp,$(OBJBINDIR)ide$(E),"$(BINDIR)/")
624 $(call cp,$(OBJBINDIR)ear$(E),"$(BINDIR)/")
625 $(call cp,$(OBJBINDIR)ecc$(E),"$(BINDIR)/")
626 $(call cp,$(OBJBINDIR)ecp$(E),"$(BINDIR)/")
627 $(call cp,$(OBJBINDIR)ecs$(E),"$(BINDIR)/")
628 $(call cp,$(OBJBINDIR)epj2make$(E),"$(BINDIR)/")
629 $(call cp,$(OBJBINDIR)documentor$(E),"$(BINDIR)/")
631 $(call cp,$(OBJBINDIR)CodeGuard$(E),"$(BINDIR)/")
633 $(call cp,$(OBJLIBDIR)libecereVanilla$(A),"$(DESTSLIBDIR)/")
634 $(call cp,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"
635 $(call cpr,$(DOC)/*.econ,"$(DOCDIR)/")
639 install $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/
640 install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/
641 install $(OBJLIBDIR)$(LP)ec$(SO) $(DESTLIBDIR)/
642 install $(OBJLIBDIR)$(LP)EDA$(SO) $(DESTLIBDIR)/
643 install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(DESTLIBDIR)/
644 ifdef EDASQLiteCipher
645 install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(DESTLIBDIR)/
647 ifneq ($(ECERE_AUDIO),n)
648 install $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/
650 install $(OBJBINDIR)ide$(E) $(BINDIR)/
651 install $(OBJBINDIR)ear$(E) $(BINDIR)/
652 install $(OBJBINDIR)ecc$(E) $(BINDIR)/
653 install $(OBJBINDIR)ecp$(E) $(BINDIR)/
654 install $(OBJBINDIR)ecs$(E) $(BINDIR)/
655 install $(OBJBINDIR)epj2make$(E) $(BINDIR)/
656 install $(OBJBINDIR)documentor$(E) $(BINDIR)/
658 install $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/
660 install $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/
661 install -d $(DOCDIR)/
662 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"
663 $(call cpr,$(DOC)/*.econ,"$(DOCDIR)/")
664 mkdir -p $(MANDIR)/man1
665 cp -pRf share/man/man1/* $(MANDIR)/man1
666 mkdir -p $(SAMPLESDIR)
667 cp -pRf samples/* $(SAMPLESDIR)
668 find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
669 mkdir -p $(EXTRASDIR)
670 cp -pRf extras/* $(EXTRASDIR)
674 ifndef WINDOWS_TARGET
676 mkdir -p $(DESTLIBDIR)/ec
677 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SOV)
678 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SOV)
679 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SOV)
680 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SOV)
681 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SOV)
682 ifdef EDASQLiteCipher
683 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SOV)
685 ifneq ($(ECERE_AUDIO),n)
686 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EcereAudio$(SO) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SOV)
688 ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO).0
689 ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO).0
690 ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO).0
691 ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO).0
692 ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO).0
693 ifdef EDASQLiteCipher
694 ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO).0
696 ifneq ($(ECERE_AUDIO),n)
697 ln -sf $(LP)EcereAudio$(SOV) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO).0
699 ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO)
700 ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
701 ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO)
702 ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO)
703 ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO)
704 ln -sf ../$(LP)ecere$(SOV) $(DESTLIBDIR)/ec/$(LP)ecere$(SO)
705 ln -sf ../$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/ec/$(LP)ecereCOM$(SO)
706 ifdef EDASQLiteCipher
707 ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO)
709 ifneq ($(ECERE_AUDIO),n)
710 ln -sf $(LP)EcereAudio$(SOV) $(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO)
713 install $(INSTALL_FLAGS) -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
714 install $(INSTALL_FLAGS) -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
717 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/$(LP)ecere$(SO)
718 install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
720 install $(INSTALL_FLAGS) $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
721 install $(INSTALL_FLAGS) $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
722 install $(INSTALL_FLAGS) $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
723 install $(INSTALL_FLAGS) $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
724 install $(INSTALL_FLAGS) $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
725 install $(INSTALL_FLAGS) $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
726 install $(INSTALL_FLAGS) $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
728 install $(INSTALL_FLAGS) $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
730 install $(INSTALL_FLAGS) $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/libecereVanilla$(A)
732 install $(INSTALL_FLAGS) -d $(DOCDIR)
734 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"
735 $(call cpr,$(DOC)/*.econ,"$(DOCDIR)/")
736 mkdir -p $(MANDIR)/man1
737 cp -pRf share/man/man1/* $(MANDIR)/man1
738 mkdir -p $(SAMPLESDIR)
739 cp -pRf samples/* $(SAMPLESDIR)
740 find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
741 mkdir -p $(EXTRASDIR)
742 cp $(CPFLAGS) extras/* $(EXTRASDIR)
744 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecere0
745 install $(INSTALL_FLAG) -m644 NEWS $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
746 gzip -n -f -9 $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
747 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-dev
748 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-dev/
749 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-extras
750 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-extras/
751 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-samples
752 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-samples/
753 mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-sdk
754 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-sdk/
755 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecc0
756 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecc0/
757 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecerecom0
758 cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecerecom0/
759 mkdir -p $(DESTDIR)$(prefix)/share/doc/libeda0
760 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libeda0/
761 mkdir -p $(DESTDIR)$(prefix)/share/doc/libedasqlite0
762 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libedasqlite0/
763 mkdir -p $(DESTDIR)$(prefix)/share/doc/libecereaudio0
764 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecereaudio0/
770 $(call rm,"$(DESTLIBDIR)/$(LP)ecere$(SO)")
771 $(call rm,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO)")
772 $(call rm,"$(DESTLIBDIR)/$(LP)ec$(SO)")
773 $(call rm,"$(DESTLIBDIR)/$(LP)EDA$(SO)")
775 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO)")
776 ifdef EDASQLiteCipher
777 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO)")
779 ifneq ($(ECERE_AUDIO),n)
780 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EcereAudio$(SO)")
783 $(call rm,"$(DESTLIBDIR)/$(LP)EDASQLite$(SO)")
784 ifdef EDASQLiteCipher
785 $(call rm,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO)")
787 ifneq ($(ECERE_AUDIO),n)
788 $(call rm,"$(DESTLIBDIR)/$(LP)EcereAudio$(SO)")
791 $(call rm,"$(BINDIR)/ide$(E)")
792 $(call rm,"$(BINDIR)/ear$(E)")
793 $(call rm,"$(BINDIR)/ecc$(E)")
794 $(call rm,"$(BINDIR)/ecp$(E)")
795 $(call rm,"$(BINDIR)/ecs$(E)")
796 $(call rm,"$(BINDIR)/epj2make$(E)")
797 $(call rm,"$(BINDIR)/documentor$(E)")
799 $(call rm,"$(BINDIR)/CodeGuard$(E)")
801 $(call rm,"$(DESTSLIBDIR)/libecereVanilla$(A)")
802 $(call rm,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
803 $(call rm,"$(DOCDIR)/ecere.eCdoc")
804 $(call rm,"$(DOCDIR)/ecereCOM.eCdoc")
805 $(call rm,"$(DOCDIR)/EDA.eCdoc")
806 $(call rmr,"$(DOCDIR)/ecere")
807 $(call rmr,"$(DOCDIR)/ecereCOM")
808 $(call rmr,"$(DOCDIR)/EDA")
810 $(call rm,"$(DESTLIBDIR)/$(LP)ecere$(SO).0")
811 $(call rm,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO).0")
812 $(call rm,"$(DESTLIBDIR)/ec/$(LP)ec$(SO).0")
813 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDA$(SO).0")
814 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO).0")
815 ifdef EDASQLiteCipher
816 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO).0")
818 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EcereaAudio$(SO).0")
819 $(call rm,"$(DESTLIBDIR)/$(LP)ecere$(SOV)")
820 $(call rm,"$(DESTLIBDIR)/$(LP)ecereCOM$(SOV)")
821 $(call rm,"$(DESTLIBDIR)/ec/$(LP)ec$(SOV)")
822 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDA$(SOV)")
823 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDASQLite$(SOV)")
824 ifdef EDASQLiteCipher
825 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SOV)")
827 ifneq ($(ECERE_AUDIO),n)
828 $(call rm,"$(DESTLIBDIR)/ec/$(LP)EcereAudio$(SOV)")
830 $(call rm,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
831 $(call rm,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
833 $(call rmdir,"$(BINDIR)/")
834 $(call rmdir,"$(DESTLIBDIR)/")
835 $(call rmdir,"$(DESTSLIBDIR)/")
836 $(call rmdir,"$(DOCDIR)/")
838 $(call rmdir,"$(DESTDIR)/")
840 @$(call echo,The Ecere SDK has been uninstalled.)
842 regenbootstrap: update_ecere update_libec update_ecp update_ecc update_ecs
843 @echo Bootstrap regenerated.
845 updatebootstrap: regenbootstrap
846 @echo Copying files...
847 $(call cp,ecere/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecere/bootstrap)
848 $(call cp,compiler/libec/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/libec/bootstrap)
849 $(call cp,compiler/ecp/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecp/bootstrap)
850 $(call cp,compiler/ecc/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecc/bootstrap)
851 $(call cp,compiler/ecs/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/*.c,compiler/bootstrap/ecs/bootstrap)
852 @echo Bootstrap updated.
855 @echo Regenerating ecere bootstrapper...
856 cd ecere && $(MAKE) -f Makefile.bootstrap clean
857 cd ecere && $(MAKE) -f Makefile.bootstrap
860 @echo Regenerating ec bootstrapper...
861 cd compiler/libec && $(MAKE) -f Makefile.bootstrap clean
862 cd compiler/libec && $(MAKE) -f Makefile.bootstrap
865 @echo Regenerating ecp bootstrapper...
866 cd compiler/ecp && $(MAKE) -f Makefile.bootstrap clean
867 cd compiler/ecp && $(MAKE) -f Makefile.bootstrap
870 @echo Regenerating ecc bootstrapper...
871 cd compiler/ecc && $(MAKE) -f Makefile.bootstrap clean
872 cd compiler/ecc && $(MAKE) -f Makefile.bootstrap
875 @echo Regenerating ecs bootstrapper...
876 cd compiler/ecs && $(MAKE) -f Makefile.bootstrap clean
877 cd compiler/ecs && $(MAKE) -f Makefile.bootstrap
880 @$(call echo,Printing values of some variables.)
881 @$(call echo,_SDK_SRC_ROOT=$(_SDK_SRC_ROOT))
882 @$(call echo,_CF_DIR=$(_CF_DIR))
883 @$(call echo,HOST_PLATFORM=$(HOST_PLATFORM))
884 @$(call echo,TARGET_PLATFORM=$(TARGET_PLATFORM))
885 @$(call echo,PLATFORM=$(PLATFORM))
886 @$(call echo,LINUX_HOST=$(LINUX_HOST))
887 @$(call echo,LINUX_TARGET=$(LINUX_TARGET))
888 @$(call echo,OSX_HOST=$(OSX_HOST))
889 @$(call echo,OSX_TARGET=$(OSX_TARGET))
890 @$(call echo,WINDOWS_HOST=$(WINDOWS_HOST))
891 @$(call echo,WINDOWS_TARGET=$(WINDOWS_TARGET))
892 @$(call echo,BSD_HOST=$(BSD_HOST))
893 @$(call echo,BSD_TARGET=$(BSD_TARGET))
894 @$(call echo,CCACHE=$(CCACHE))
895 @$(call echo,CCACHE_COMPILE=$(CCACHE_COMPILE))
896 @$(call echo,CCACHE_PREFIX=$(CCACHE_PREFIX))
897 @$(call echo,DISTCC=$(DISTCC))
898 @$(call echo,GCC_PREFIX=$(GCC_PREFIX))
899 @$(call echo,CC=$(CC))
900 @$(call echo,CPP=$(CPP))
901 @$(call echo,ECP=$(ECP))
902 @$(call echo,ECC=$(ECC))
903 @$(call echo,ECS=$(ECS))
904 @$(call echo,EAR=$(EAR))
905 @$(call echo,AS=$(AS))
906 @$(call echo,LD=$(LD))
907 @$(call echo,AR=$(AR))
908 @$(call echo,STRIP=$(STRIP))
909 @$(call echo,UPX=$(UPX))
910 @$(call echo,TARGET_ARCH=$(TARGET_ARCH))
911 @$(call echo,DESTDIR=$(DESTDIR))
912 @$(call echo,PREFIXLIBDIR=$(PREFIXLIBDIR))
913 @$(call echo,ARCH=$(ARCH))
914 @$(call echo,ARCH_FLAGS=$(ARCH_FLAGS))
915 @$(call echo,GIT_REPOSITORY=$(GIT_REPOSITORY))
916 @$(call echo,DIR_VER=$(DIR_VER))
917 @$(call echo,REPOSITORY_VER=$(REPOSITORY_VER))
918 @$(call echo,CPPFLAGS=$(CPPFLAGS))