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 mkdir -p -m 777 $(DESTDIR)$(prefix)/lib/ec
490 ln -sf $(LIBDIR)/$(LP)ecere$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)ecere$(SO)
491 ln -sf $(LIBDIR)/$(LP)ecereCOM$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)ecereCOM$(SO)
492 ln -sf $(LIBDIR)/$(LP)ec$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)ec$(SO)
493 ln -sf $(LIBDIR)/$(LP)EDA$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)EDA$(SO)
494 ln -sf $(LIBDIR)/$(LP)EDASQLite$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)EDASQLite$(SO)
495 ifdef EDASQLiteCipher
496 ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
498 install -D -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
499 install -D -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
501 install -D $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/$(LP)ecere$(SO)
502 install -D $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/$(LP)ecereCOM$(SO)
503 install -D $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/$(LP)ec$(SO)
504 install -D $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/$(LP)EDA$(SO)
505 install -D $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/$(LP)EDASQLite$(SO)
506 ifdef EDASQLiteCipher
507 install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
510 install -D $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
511 install -D $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
512 install -D $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
513 install -D $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
514 install -D $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
515 install -D $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
516 install -D $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
518 install -D $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
520 install -D $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/libecereVanilla$(A)
521 install -D -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
522 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"
523 install -D -m 644 doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
524 install -D -m 644 doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
525 install -D -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
526 mkdir -p -m 777 $(MANDIR)/man1
527 cp -pRf share/man/man1/* $(MANDIR)/man1
528 mkdir -p -m 777 $(SAMPLESDIR)
529 cp -pRf samples/* $(SAMPLESDIR)
530 mkdir -p -m 777 $(EXTRASDIR)
531 cp -pRf extras/* $(EXTRASDIR)
533 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libecere0
534 install -D -m644 NEWS $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
535 gzip -f -9 $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
536 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-dev
537 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-dev/
538 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-extras
539 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-extras/
540 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-samples
541 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-samples/
542 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-sdk
543 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-sdk/
544 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libec0
545 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libec0/
546 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libecerecom0
547 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecerecom0/
548 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libeda0
549 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libeda0/
550 mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libedasqlite0
551 ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libedasqlite0/
557 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO)")
558 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO)")
559 $(call rmq,"$(LIBDIR)/$(LP)ec$(SO)")
560 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO)")
561 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO)")
562 ifdef EDASQLiteCipher
563 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO)")
565 $(call rmq,"$(BINDIR)/ide$(E)")
566 $(call rmq,"$(BINDIR)/ear$(E)")
567 $(call rmq,"$(BINDIR)/ecc$(E)")
568 $(call rmq,"$(BINDIR)/ecp$(E)")
569 $(call rmq,"$(BINDIR)/ecs$(E)")
570 $(call rmq,"$(BINDIR)/epj2make$(E)")
571 $(call rmq,"$(BINDIR)/documentor$(E)")
573 $(call rmq,"$(BINDIR)/CodeGuard$(E)")
575 $(call rmq,"$(SLIBDIR)/libecereVanilla$(A)")
576 $(call rmq,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
577 $(call rmq,"$(DOCDIR)/ecere.eCdoc")
578 $(call rmq,"$(DOCDIR)/ecereCOM.eCdoc")
579 $(call rmq,"$(DOCDIR)/EDA.eCdoc")
581 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO).0")
582 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO).0")
583 $(call rmq,"$(LIBDIR)/$(LP)ec$(SO).0")
584 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO).0")
585 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO).0")
586 ifdef EDASQLiteCipher
587 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0")
589 $(call rmq,"$(LIBDIR)/$(LP)ecere$(SOV)")
590 $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SOV)")
591 $(call rmq,"$(LIBDIR)/$(LP)ec$(SOV)")
592 $(call rmq,"$(LIBDIR)/$(LP)EDA$(SOV)")
593 $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SOV)")
594 ifdef EDASQLiteCipher
595 $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)")
597 $(call rmq,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
598 $(call rmq,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
600 $(call rmdirq,"$(BINDIR)/")
601 $(call rmdirq,"$(LIBDIR)/")
602 $(call rmdirq,"$(SLIBDIR)/")
603 $(call rmdirq,"$(DOCDIR)/")
605 $(call rmdirq,"$(DESTDIR)/")
607 @$(call echo,The Ecere SDK has been uninstalled.)
610 @$(call echo,Printing values of some variables.)
611 @$(call echo,CCACHE=$(CCACHE))
612 @$(call echo,CCACHE_COMPILE=$(CCACHE_COMPILE))
613 @$(call echo,CCACHE_PREFIX=$(CCACHE_PREFIX))
614 @$(call echo,DISTCC=$(DISTCC))
615 @$(call echo,CC=$(CC))
616 @$(call echo,CPP=$(CPP))
617 @$(call echo,ECP=$(ECP))
618 @$(call echo,ECC=$(ECC))
619 @$(call echo,ECS=$(ECS))
620 @$(call echo,EAR=$(EAR))
621 @$(call echo,AS=$(AS))
622 @$(call echo,LD=$(LD))
623 @$(call echo,AR=$(AR))
624 @$(call echo,STRIP=$(STRIP))
625 @$(call echo,UPX=$(UPX))