1 .PHONY: all clean realclean distclean emptyoutput prepinstall actualinstall install copyonlyinstall uninstall troubleshoot outputdirs bootstrap deps ecere ecerecom ecerevanilla ear compiler prepbinaries epj2make ide documentor eda prepcodeguard codeguard
14 ifdef ProgramFiles(x86)
15 export DESTDIR=${ProgramFiles(x86)}/Ecere SDK
18 export DESTDIR=$(ProgramFiles)/Ecere SDK
20 export DESTDIR=$(SystemDrive)/Ecere SDK
29 export DOCDIR=$(DESTDIR)$(prefix)/doc
33 export BINDIR=$(DESTDIR)$(prefix)/bin
37 export LIBDIR=$(BINDIR)
41 export SLIBDIR=$(DESTDIR)$(prefix)/lib
45 export SAMPLESDIR=$(DESTDIR)$(prefix)/samples
49 export EXTRASDIR=$(DESTDIR)$(prefix)/extras
66 export DOCDIR=$(DESTDIR)$(prefix)/share/ecere/doc
70 export MANDIR=$(DESTDIR)$(prefix)/share/man/
74 export BINDIR=$(DESTDIR)$(prefix)/bin
77 HOSTTYPE := $(shell uname -m)
80 ifeq "$(HOSTTYPE)" "x86_64"
81 export LIBDIR=$(DESTDIR)$(prefix)/lib32
83 export LIBDIR=$(DESTDIR)$(prefix)/lib
88 ifeq "$(HOSTTYPE)" "x86_64"
89 export SLIBDIR=$(DESTDIR)$(prefix)/lib32
91 export SLIBDIR=$(DESTDIR)$(prefix)/lib
96 export SAMPLESDIR=$(DESTDIR)$(prefix)/share/ecere/samples
100 export EXTRASDIR=$(DESTDIR)$(prefix)/share/ecere/extras
106 OBJDIR := obj$(OBJALT)/
107 OBJBINDIR := $(OBJDIR)$(PLATFORM)/bin/
108 OBJLIBDIR := $(OBJDIR)$(PLATFORM)/lib/
110 all: prepbinaries ide epj2make documentor eda codeguard
111 @$(call echo,The Ecere SDK is fully built.)
114 $(if $(wildcard $(OBJDIR)),,$(call mkdirq,$(OBJDIR)))
115 $(if $(wildcard $(OBJBINDIR)),,$(call mkdirq,$(OBJBINDIR)))
116 $(if $(wildcard $(OBJLIBDIR)),,$(call mkdirq,$(OBJLIBDIR)))
118 bootstrap: outputdirs
119 cd compiler && $(MAKE) bootstrap
122 @$(call echo,Building dependencies...)
125 ecere: bootstrap deps
126 @$(call echo,Building 2nd stage ecere...)
127 cd ecere && $(MAKE) nores
128 cd ear && $(MAKE) nores
129 cd ecere && $(MAKE) cleantarget
133 @$(call echo,Building eC Core Runtime...)
134 cd ecere && $(MAKE) -f Makefile.ecereCOM
136 ecerevanilla: bootstrap
137 @$(call echo,Building Vanilla Ecere...)
138 cd ecere && $(MAKE) -f Makefile.vanilla
140 ear: ecere ecerevanilla
141 @$(call echo,Building ear...)
142 cd ear && cd cmd && $(MAKE) cleantarget
146 @$(call echo,Building 2nd stage compiler)
147 cd compiler && $(MAKE)
149 prepbinaries: compiler ecerecom
150 @$(call echo,Enabling 2nd stage binaries...)
152 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJBINDIR))
153 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
154 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJBINDIR))
157 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJLIBDIR))
158 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
159 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJLIBDIR))
160 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
161 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
162 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
163 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
164 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
165 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
169 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJLIBDIR))
170 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
171 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJLIBDIR))
174 $(call cpq,ear/cmd/obj/release.$(PLATFORM)/ear$(E),$(OBJBINDIR))
175 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)/ecc$(E),$(OBJBINDIR))
176 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)/ecp$(E),$(OBJBINDIR))
177 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)/ecs$(E),$(OBJBINDIR))
179 epj2make: prepbinaries
180 @$(call echo,Building epj2make...)
181 cd epj2make && $(MAKE)
184 @$(call echo,Building IDE...)
187 documentor: prepbinaries
188 @$(call echo,Building Documentor...)
189 cd documentor && $(MAKE)
191 codeguard: prepcodeguard
193 @$(call echo,Building CodeGuard client...)
194 cd codeGuard && $(MAKE)
200 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
204 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
205 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
206 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
211 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
217 @$(call echo,Building EDA...)
220 emptyoutput: outputdirs
221 $(call rmq,$(OBJLIBDIR)libecereVanilla$(A))
222 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO))
223 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO))
224 $(call rmq,$(SODESTDIR)$(LP)ec$(SO))
225 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO))
226 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO))
227 ifdef EDASQLiteCipher
228 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO))
231 $(call rmq,$(SODESTDIR)$(LP)ecere$(SO).0)
232 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SO).0)
233 $(call rmq,$(SODESTDIR)$(LP)ec$(SO).0)
234 $(call rmq,$(SODESTDIR)$(LP)EDA$(SO).0)
235 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SO).0)
236 ifdef EDASQLiteCipher
237 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SO).0)
239 $(call rmq,$(SODESTDIR)$(LP)ecere$(SOV))
240 $(call rmq,$(SODESTDIR)$(LP)ecereCOM$(SOV))
241 $(call rmq,$(SODESTDIR)$(LP)ec$(SOV))
242 $(call rmq,$(SODESTDIR)$(LP)EDA$(SOV))
243 $(call rmq,$(SODESTDIR)$(LP)EDASQLite$(SOV))
244 ifdef EDASQLiteCipher
245 $(call rmq,$(SODESTDIR)$(LP)EDASQLiteCipher$(SOV))
248 $(call rmq,$(OBJBINDIR)ear$(E))
249 $(call rmq,$(OBJBINDIR)ecc$(E))
250 $(call rmq,$(OBJBINDIR)ecp$(E))
251 $(call rmq,$(OBJBINDIR)ecs$(E))
252 $(call rmq,$(OBJBINDIR)epj2make$(E))
253 $(call rmq,$(OBJBINDIR)ide$(E))
254 $(call rmq,$(OBJBINDIR)documentor$(E))
255 ifdef EDASQLiteCipher
256 $(call rmq,$(OBJBINDIR)CodeGuard$(E))
260 cd deps && $(MAKE) clean
261 cd ecere && $(MAKE) clean
262 cd compiler && $(MAKE) clean
263 cd ear && $(MAKE) clean
264 cd epj2make && $(MAKE) clean
265 cd ide && $(MAKE) clean
266 cd documentor && $(MAKE) clean
268 cd codeGuard && $(MAKE) clean
270 cd eda && $(MAKE) clean
274 cd deps && $(MAKE) realclean
275 cd ecere && $(MAKE) realclean
276 cd compiler && $(MAKE) realclean
277 cd ear && $(MAKE) realclean
278 cd epj2make && $(MAKE) realclean
279 cd ide && $(MAKE) realclean
280 cd documentor && $(MAKE) realclean
282 cd codeGuard && $(MAKE) realclean
284 cd eda && $(MAKE) realclean
285 $(call rmrq,obj/$(PLATFORM)/)
289 cd deps && $(MAKE) distclean
290 cd ecere && $(MAKE) distclean
291 cd compiler && $(MAKE) distclean
292 cd ear && $(MAKE) distclean
293 cd epj2make && $(MAKE) distclean
294 cd ide && $(MAKE) distclean
295 cd documentor && $(MAKE) distclean
297 cd codeGuard && $(MAKE) distclean
299 cd eda && $(MAKE) distclean
303 DOC = doc/ecere.eCdoc doc/ecereCOM.eCdoc doc/EDA.eCdoc
306 ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV) \
307 ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV) \
308 ecere/obj/vanilla.$(PLATFORM)/libecereVanilla$(A) \
309 compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV) \
310 compiler/ecp/obj/release.$(PLATFORM)/ecp$(E) \
311 compiler/ecc/obj/release.$(PLATFORM)/ecc$(E) \
312 compiler/ecs/obj/release.$(PLATFORM)/ecs$(E) \
313 ear/cmd/obj/release.$(PLATFORM)/ear$(E) \
314 epj2make/obj/release.$(PLATFORM)/epj2make$(E) \
315 documentor/obj/release.$(PLATFORM)/documentor$(E) \
316 ide/obj/release.$(PLATFORM)/ide$(E) \
317 eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV) \
318 eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SOV)
321 BINARIES += codeGuard/obj/release.$(PLATFORM)/CodeGuard$(E)
324 ifdef EDASQLiteCipher
325 BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SOV)
328 # Making sure everything is in $(OBJBINDIR) and $(OBJLIBDIR)
329 # Shared Libraries (in $(OBJBINDIR) on Windows and $(OBJLIBDIR) otherwise)
330 # Symlinks for libs on Linux
331 # Binaries (always in $(OBJBINDIR)) and Static Libraries (always in $(OBJLIBDIR))
332 prepinstall: $(DOC) $(BINARIES) outputdirs
335 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJBINDIR))
336 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
337 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJBINDIR))
338 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
339 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
340 ifdef EDASQLiteCipher
341 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
346 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJLIBDIR))
347 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
348 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJLIBDIR))
349 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
350 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
351 ifdef EDASQLiteCipher
352 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
354 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
355 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
356 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
357 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO).0
358 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO).0
359 ifdef EDASQLiteCipher
360 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO).0
362 ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO)
363 ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO)
364 ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO)
365 ln -sf $(LP)EDA$(SOV) $(OBJLIBDIR)$(LP)EDA$(SO)
366 ln -sf $(LP)EDASQLite$(SOV) $(OBJLIBDIR)$(LP)EDASQLite$(SO)
367 ifdef EDASQLiteCipher
368 ln -sf $(LP)EDASQLiteCipher$(SOV) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO)
374 $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJLIBDIR))
375 $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
376 $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJLIBDIR))
377 $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
378 $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
379 ifdef EDASQLiteCipher
380 $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
385 $(call cpq,ide/obj/release.$(PLATFORM)/ide$(E),$(OBJBINDIR))
386 $(call cpq,ear/cmd/obj/release.$(PLATFORM)/ear$(E),$(OBJBINDIR))
387 $(call cpq,compiler/ecc/obj/release.$(PLATFORM)/ecc$(E),$(OBJBINDIR))
388 $(call cpq,compiler/ecp/obj/release.$(PLATFORM)/ecp$(E),$(OBJBINDIR))
389 $(call cpq,compiler/ecs/obj/release.$(PLATFORM)/ecs$(E),$(OBJBINDIR))
390 $(call cpq,epj2make/obj/release.$(PLATFORM)/epj2make$(E),$(OBJBINDIR))
391 $(call cpq,documentor/obj/release.$(PLATFORM)/documentor$(E),$(OBJBINDIR))
393 $(call cpq,codeGuard/obj/release.$(PLATFORM)/CodeGuard$(E),$(OBJBINDIR))
395 $(call cpq,ecere/obj/vanilla.$(PLATFORM)/libecereVanilla$(A),$(OBJLIBDIR))
398 install: prepinstall actualinstall
399 @$(call echo,The Ecere SDK has been installed.)
401 copyonlyinstall: actualinstall
402 @$(call echo,The Ecere SDK has been installed. copyonlyinstall.)
406 $(call mkdirq,"$(BINDIR)/")
407 $(call mkdirq,"$(SLIBDIR)/")
408 $(call mkdirq,"$(DOCDIR)/")
409 $(call cpq,$(OBJBINDIR)$(LP)ecere$(SO),"$(LIBDIR)/")
410 $(call cpq,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(LIBDIR)/")
411 $(call cpq,$(OBJBINDIR)$(LP)ec$(SO),"$(LIBDIR)/")
412 $(call cpq,$(OBJBINDIR)$(LP)EDA$(SO),"$(LIBDIR)/")
413 $(call cpq,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(LIBDIR)/")
414 ifdef EDASQLiteCipher
415 $(call cpq,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(LIBDIR)/")
417 $(call cpq,$(OBJBINDIR)ide$(E),"$(BINDIR)/")
418 $(call cpq,$(OBJBINDIR)ear$(E),"$(BINDIR)/")
419 $(call cpq,$(OBJBINDIR)ecc$(E),"$(BINDIR)/")
420 $(call cpq,$(OBJBINDIR)ecp$(E),"$(BINDIR)/")
421 $(call cpq,$(OBJBINDIR)ecs$(E),"$(BINDIR)/")
422 $(call cpq,$(OBJBINDIR)epj2make$(E),"$(BINDIR)/")
423 $(call cpq,$(OBJBINDIR)documentor$(E),"$(BINDIR)/")
425 $(call cpq,$(OBJBINDIR)CodeGuard$(E),"$(BINDIR)/")
427 $(call cpq,$(OBJLIBDIR)libecereVanilla$(A),"$(SLIBDIR)/")
428 $(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"
429 $(call cpq,doc/ecere.eCdoc,"$(DOCDIR)/")
430 $(call cpq,doc/ecereCOM.eCdoc,"$(DOCDIR)/")
431 $(call cpq,doc/EDA.eCdoc,"$(DOCDIR)/")
435 install $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/
436 install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/
437 install $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/
438 install $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/
439 install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/
440 ifdef EDASQLiteCipher
441 install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/
443 install $(OBJBINDIR)ide$(E) $(BINDIR)/
444 install $(OBJBINDIR)ear$(E) $(BINDIR)/
445 install $(OBJBINDIR)ecc$(E) $(BINDIR)/
446 install $(OBJBINDIR)ecp$(E) $(BINDIR)/
447 install $(OBJBINDIR)ecs$(E) $(BINDIR)/
448 install $(OBJBINDIR)epj2make$(E) $(BINDIR)/
449 install $(OBJBINDIR)documentor$(E) $(BINDIR)/
451 install $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/
453 install $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/
454 install -d $(DOCDIR)/
455 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"
456 install doc/ecere.eCdoc $(DOCDIR)/
457 install doc/ecereCOM.eCdoc $(DOCDIR)/
458 install doc/EDA.eCdoc $(DOCDIR)/
459 mkdir -p -m 777 $(SAMPLESDIR)
460 cp -pRf samples/* $(SAMPLESDIR)
461 mkdir -p -m 777 $(EXTRASDIR)
462 cp -pRf extras/* $(EXTRASDIR)
468 install -D $(OBJLIBDIR)$(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SOV)
469 install -D $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SOV)
470 install -D $(OBJLIBDIR)$(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SOV)
471 install -D $(OBJLIBDIR)$(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SOV)
472 install -D $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SOV)
473 ifdef EDASQLiteCipher
474 install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)
476 ln -sf $(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SO).0
477 ln -sf $(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SO).0
478 ln -sf $(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SO).0
479 ln -sf $(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SO).0
480 ln -sf $(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SO).0
481 ifdef EDASQLiteCipher
482 ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0
484 ln -sf $(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SO)
485 ln -sf $(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SO)
486 ln -sf $(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SO)
487 ln -sf $(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SO)
488 ln -sf $(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SO)
489 ifdef EDASQLiteCipher
490 ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
492 install -D -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
493 install -D -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
495 install -D $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/$(LP)ecere$(SO)
496 install -D $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/$(LP)ecereCOM$(SO)
497 install -D $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/$(LP)ec$(SO)
498 install -D $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/$(LP)EDA$(SO)
499 install -D $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/$(LP)EDASQLite$(SO)
500 ifdef EDASQLiteCipher
501 install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
504 install -D $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
505 install -D $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
506 install -D $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
507 install -D $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
508 install -D $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
509 install -D $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
510 install -D $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
512 install -D $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
514 install -D $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/libecereVanilla$(A)
515 install -D -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
516 install -D -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"
517 install -D -m 644 doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
518 install -D -m 644 doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
519 install -D -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
520 mkdir -p -m 777 $(MANDIR)/man1
521 cp -pRf share/man/man1/* $(MANDIR)/man1
522 mkdir -p -m 777 $(SAMPLESDIR)
523 cp -pRf samples/* $(SAMPLESDIR)
524 mkdir -p -m 777 $(EXTRASDIR)
525 cp -pRf extras/* $(EXTRASDIR)
530 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO)")
531 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO)")
532 $(call rmq,"$(LIBDIR)/$(LP)ec$(SO)")
533 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO)")
534 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO)")
535 ifdef EDASQLiteCipher
536 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO)")
538 $(call rmq,"$(BINDIR)/ide$(E)")
539 $(call rmq,"$(BINDIR)/ear$(E)")
540 $(call rmq,"$(BINDIR)/ecc$(E)")
541 $(call rmq,"$(BINDIR)/ecp$(E)")
542 $(call rmq,"$(BINDIR)/ecs$(E)")
543 $(call rmq,"$(BINDIR)/epj2make$(E)")
544 $(call rmq,"$(BINDIR)/documentor$(E)")
546 $(call rmq,"$(BINDIR)/CodeGuard$(E)")
548 $(call rmq,"$(SLIBDIR)/libecereVanilla$(A)")
549 $(call rmq,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
550 $(call rmq,"$(DOCDIR)/ecere.eCdoc")
551 $(call rmq,"$(DOCDIR)/ecereCOM.eCdoc")
552 $(call rmq,"$(DOCDIR)/EDA.eCdoc")
554 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO).0")
555 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO).0")
556 $(call rmq,"$(LIBDIR)/$(LP)ec$(SO).0")
557 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO).0")
558 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO).0")
559 ifdef EDASQLiteCipher
560 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0")
562 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SOV)")
563 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SOV)")
564 $(call rmq,"$(LIBDIR)/$(LP)ec$(SOV)")
565 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SOV)")
566 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SOV)")
567 ifdef EDASQLiteCipher
568 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)")
570 $(call rmq,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
571 $(call rmq,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
573 $(call rmdirq,"$(BINDIR)/")
574 $(call rmdirq,"$(LIBDIR)/")
575 $(call rmdirq,"$(SLIBDIR)/")
576 $(call rmdirq,"$(DOCDIR)/")
578 $(call rmdirq,"$(DESTDIR)/")
580 @$(call echo,The Ecere SDK has been uninstalled.)
583 @$(call echo,Printing values of some variables.)
584 @$(call echo,CCACHE=$(CCACHE))
585 @$(call echo,CCACHE_COMPILE=$(CCACHE_COMPILE))
586 @$(call echo,CCACHE_PREFIX=$(CCACHE_PREFIX))
587 @$(call echo,DISTCC=$(DISTCC))
588 @$(call echo,CC=$(CC))
589 @$(call echo,CPP=$(CPP))
590 @$(call echo,ECP=$(ECP))
591 @$(call echo,ECC=$(ECC))
592 @$(call echo,ECS=$(ECS))
593 @$(call echo,EAR=$(EAR))
594 @$(call echo,AS=$(AS))
595 @$(call echo,LD=$(LD))
596 @$(call echo,AR=$(AR))
597 @$(call echo,STRIP=$(STRIP))
598 @$(call echo,UPX=$(UPX))