-.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
+.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
+ifneq "$V" "1"
.SILENT:
+endif
include crossplatform.mk
include default.cf
+ifdef BSD_HOST
+INSTALL_FLAGS :=
+CPFLAGS := -pRf
+else
+INSTALL_FLAGS := -D
+CPFLAGS := -dpRf
+endif
+
XBOOT := $(if $(CROSS_TARGET),GCC_PREFIX= TARGET_PLATFORM=$(HOST_PLATFORM) PLATFORM=$(HOST_PLATFORM),)
LIBVER := .0.44
ifndef DESTDIR
-ifdef ProgramFiles(x86)
-export DESTDIR=${ProgramFiles(x86)}/Ecere SDK
-else
-ifdef ProgramFiles
-export DESTDIR=$(ProgramFiles)/Ecere SDK
+ifeq "$(TARGET_ARCH)" "x86_64"
+ ifneq "$(wildcard $(SystemDrive)/Program\ Files )" ""
+ export DESTDIR=$(SystemDrive)/Program Files/Ecere SDK
+ else
+ export DESTDIR=$(SystemDrive)/Ecere SDK
+ endif
else
-export DESTDIR=$(SystemDrive)/Ecere SDK
-endif
+ ifdef ProgramFiles(x86)
+ export DESTDIR=${ProgramFiles(x86)}/Ecere SDK
+ else
+ ifdef ProgramFiles
+ export DESTDIR=$(ProgramFiles)/Ecere SDK
+ else
+ export DESTDIR=$(SystemDrive)/Ecere SDK
+ endif
+ endif
endif
endif # DESTDIR
ifndef LIBDIR
export LIBDIR=$(BINDIR)
endif
+export DESTLIBDIR=$(LIBDIR)
ifndef SLIBDIR
export SLIBDIR=$(DESTDIR)$(prefix)/lib
endif
+export DESTSLIBDIR=$(SLIBDIR)
ifndef SAMPLESDIR
export SAMPLESDIR=$(DESTDIR)$(prefix)/samples
else # WINDOWS_TARGET
+ifdef OSX_TARGET
+# TODO: OSX soname
+SOV := $(SO)
+else
SOV := $(SO)$(LIBVER)
+endif
ifndef DESTDIR
export DESTDIR=
export BINDIR=$(DESTDIR)$(prefix)/bin
endif
-HOSTTYPE := $(shell uname -m)
-
-ifndef LIBDIR
-ifeq "$(HOSTTYPE)" "x86_64"
-export LIBDIR=$(DESTDIR)$(prefix)/lib32
-export PREFIXLIBDIR=$(prefix)/lib32
+ifdef LIBDIR
+ export PREFIXLIBDIR=$(LIBDIR)
else
-export LIBDIR=$(DESTDIR)$(prefix)/lib
-export PREFIXLIBDIR=$(prefix)/lib
-endif
+ export PREFIXLIBDIR=$(prefix)/lib/$(TARGET_ARCH)
+
+ ifeq "$(wildcard $(prefix)/lib/$(TARGET_ARCH) )" ""
+ export PREFIXLIBDIR=$(prefix)/lib
+
+ ifeq "$(TARGET_ARCH)" "i386-linux-gnu"
+ ifneq "$(wildcard $(prefix)/lib32 )" ""
+ export PREFIXLIBDIR=$(prefix)/lib32
+ endif
+ endif
+
+ endif
endif
-ifndef SLIBDIR
-ifeq "$(HOSTTYPE)" "x86_64"
-export SLIBDIR=$(DESTDIR)$(prefix)/lib32
+export CPPFLAGS
+CPPFLAGS += -DDEB_HOST_MULTIARCH=\"$(call escspace,$(PREFIXLIBDIR))\"
+
+DESTLIBDIR := $(DESTDIR)$(PREFIXLIBDIR)
+ifdef SLIBDIR
+DESTSLIBDIR := $(DESTDIR)$(SLIBDIR)
else
-export SLIBDIR=$(DESTDIR)$(prefix)/lib
-endif
+DESTSLIBDIR := $(DESTLIBDIR)
endif
ifndef SAMPLESDIR
endif
OBJDIR := obj$(OBJALT)/
-OBJBINDIR := $(OBJDIR)$(PLATFORM)/bin/
-OBJLIBDIR := $(OBJDIR)$(PLATFORM)/lib/
+OBJBINDIR := $(OBJDIR)$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/
+OBJLIBDIR := $(OBJDIR)$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/
XOBJDIR := obj$(OBJALT)/
-XOBJBINDIR := $(OBJDIR)$(HOST_PLATFORM)/bin/
-XOBJLIBDIR := $(OBJDIR)$(HOST_PLATFORM)/lib/
+XOBJBINDIR := $(OBJDIR)$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/
+XOBJLIBDIR := $(OBJDIR)$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/
all: prepbinaries ide epj2make documentor eda codeguard
@$(call echo,The Ecere SDK is fully built.)
deps:
ifdef CROSS_TARGET
+ifndef LINUX_HOST
@$(call echo,Building dependencies (host)...)
cd deps && $(MAKE) $(XBOOT)
endif
+endif
+ifndef LINUX_TARGET
@$(call echo,Building dependencies...)
cd deps && $(MAKE)
+endif
ecere: bootstrap deps
ifdef CROSS_TARGET
endif
cd ecere && $(MAKE) nores $(XBOOT)
cd ear && $(MAKE) nores $(XBOOT)
- cd ecere && $(MAKE) cleantarget
+ cd ecere && $(MAKE) cleaneceretarget
ifdef CROSS_TARGET
@$(call echo,Building 2nd stage ecere...)
endif
cd ear && cd cmd && $(MAKE) cleantarget
cd ear && $(MAKE)
+fixprecompile:
+ cd compiler && $(MAKE) fixprecompile
+
compiler: ecere ear
ifdef CROSS_TARGET
@$(call echo,Building 2nd stage compiler (host))
prepbinaries: compiler ecerecom
@$(call echo,Enabling 2nd stage binaries...)
ifdef WINDOWS_TARGET
- $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJBINDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
- $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJBINDIR))
+ $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJBINDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJBINDIR))
+ $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJBINDIR))
endif
ifdef LINUX_TARGET
- $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJLIBDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
- $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
+ $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
ln -sf $(LP)ec$(SOV) $(OBJLIBDIR)$(LP)ec$(SO).0
endif
ifndef WINDOWS_TARGET
ifndef LINUX_TARGET
- $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJLIBDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
- $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
+ $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
endif
endif
- $(call cpq,ear/cmd/obj/release.$(PLATFORM)/ear$(E),$(OBJBINDIR))
- $(call cpq,compiler/ecc/obj/release.$(PLATFORM)/ecc$(E),$(OBJBINDIR))
- $(call cpq,compiler/ecp/obj/release.$(PLATFORM)/ecp$(E),$(OBJBINDIR))
- $(call cpq,compiler/ecs/obj/release.$(PLATFORM)/ecs$(E),$(OBJBINDIR))
+ $(call cpq,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
+ $(call cpq,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
+ $(call cpq,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
+ $(call cpq,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
ifdef CROSS_TARGET
ifdef WINDOWS_HOST
- $(call cpq,ecere/obj/release.$(HOST_PLATFORM)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJBINDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJBINDIR))
- $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)/$(HOST_LP)ec$(HOST_SOV),$(XOBJBINDIR))
+ $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJBINDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJBINDIR))
+ $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJBINDIR))
endif
ifdef WINDOWS_HOST
- $(call cpq,ecere/obj/release.$(HOST_PLATFORM)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJLIBDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJLIBDIR))
- $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)/$(HOST_LP)ec$(HOST_SOV),$(XOBJLIBDIR))
+ $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SOV),$(XOBJLIBDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SOV),$(XOBJLIBDIR))
+ $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SOV),$(XOBJLIBDIR))
ln -sf $(HOST_LP)ecere$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecere$(HOST_SO).0
ln -sf $(HOST_LP)ecereCOM$(HOST_SOV) $(XOBJLIBDIR)$(LP)ecereCOM$(HOST_SO).0
ln -sf $(HOST_LP)ec$(HOST_SOV) $(XOBJLIBDIR)$(LP)ec$(HOST_SO).0
endif
ifndef WINDOWS_HOST
ifndef LINUX_HOST
- $(call cpq,ecere/obj/release.$(HOST_PLATFORM)/$(HOST_LP)ecere$(HOST_SO),$(XOBJLIBDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)/$(HOST_LP)ecereCOM$(HOST_SO),$(XOBJLIBDIR))
- $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)/$(HOST_LP)ec$(HOST_SO),$(XOBJLIBDIR))
+ $(call cpq,ecere/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecere$(HOST_SO),$(XOBJLIBDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ecereCOM$(HOST_SO),$(XOBJLIBDIR))
+ $(call cpq,compiler/libec/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(HOST_LP)ec$(HOST_SO),$(XOBJLIBDIR))
endif
endif
- $(call cpq,ear/cmd/obj/release.$(HOST_PLATFORM)/ear$(HOST_E),$(XOBJBINDIR))
- $(call cpq,compiler/ecc/obj/release.$(HOST_PLATFORM)/ecc$(HOST_E),$(XOBJBINDIR))
- $(call cpq,compiler/ecp/obj/release.$(HOST_PLATFORM)/ecp$(HOST_E),$(XOBJBINDIR))
- $(call cpq,compiler/ecs/obj/release.$(HOST_PLATFORM)/ecs$(HOST_E),$(XOBJBINDIR))
+ $(call cpq,ear/cmd/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(HOST_E),$(XOBJBINDIR))
+ $(call cpq,compiler/ecc/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(HOST_E),$(XOBJBINDIR))
+ $(call cpq,compiler/ecp/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(HOST_E),$(XOBJBINDIR))
+ $(call cpq,compiler/ecs/obj/release.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(HOST_E),$(XOBJBINDIR))
endif
endif
eda: prepbinaries
+ifdef CROSS_TARGET
+ @$(call echo,Building EDA (host))
+ cd eda && $(MAKE) $(XBOOT)
+endif
@$(call echo,Building EDA...)
cd eda && $(MAKE)
$(call rmq,$(OBJBINDIR)CodeGuard$(E))
endif
+cleantarget:
+ cd compiler && $(MAKE) cleantarget
+ cd documentor && $(MAKE) cleantarget
+ cd ear && $(MAKE) cleantarget
+ cd ecere && $(MAKE) cleantarget
+ cd eda && $(MAKE) cleantarget
+ cd epj2make && $(MAKE) cleantarget
+ cd ide && $(MAKE) cleantarget
+ cd installer && $(MAKE) cleantarget
+
+pots: cleantarget
+ $(MAKE) OUTPUT_POT=1
+ cd installer && $(MAKE) OUTPUT_POT=1 pots
+
+ifdef WINDOWS_TARGET
+installer:
+ $(MAKE) prepinstall ARCH=
+ $(MAKE) prepinstall ARCH=x32
+ @$(call echo,Building Ecere runtime for installer...)
+ cd ecere && @$(MAKE) -f Makefile.installer ARCH=x32
+ @$(call echo,Building Installer for Windows...)
+ cd installer && @$(MAKE) ARCH=x32
+ @$(call echo,The Ecere SDK Windows Installer is fully built.)
+endif
+
clean: emptyoutput
+ifndef LINUX_TARGET
cd deps && $(MAKE) clean
+endif
cd ecere && $(MAKE) clean
cd compiler && $(MAKE) clean
cd ear && $(MAKE) clean
cd eda && $(MAKE) clean
@$(call echo,Done.)
-realclean:
+realclean: outputdirs
+ifndef LINUX_TARGET
cd deps && $(MAKE) realclean
+endif
cd ecere && $(MAKE) realclean
cd compiler && $(MAKE) realclean
cd ear && $(MAKE) realclean
$(call rmrq,obj/$(PLATFORM)/)
@$(call echo,Done.)
-distclean:
+distclean: outputdirs
+ifndef LINUX_TARGET
cd deps && $(MAKE) distclean
+endif
cd ecere && $(MAKE) distclean
cd compiler && $(MAKE) distclean
cd ear && $(MAKE) distclean
DOC = doc/ecere.eCdoc doc/ecereCOM.eCdoc doc/EDA.eCdoc
BINARIES = \
- ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV) \
- ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV) \
- ecere/obj/vanilla.$(PLATFORM)/libecereVanilla$(A) \
- compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV) \
- compiler/ecp/obj/release.$(PLATFORM)/ecp$(E) \
- compiler/ecc/obj/release.$(PLATFORM)/ecc$(E) \
- compiler/ecs/obj/release.$(PLATFORM)/ecs$(E) \
- ear/cmd/obj/release.$(PLATFORM)/ear$(E) \
- epj2make/obj/release.$(PLATFORM)/epj2make$(E) \
- documentor/obj/release.$(PLATFORM)/documentor$(E) \
- ide/obj/release.$(PLATFORM)/ide$(E) \
- eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV) \
- eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SOV)
+ ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV) \
+ ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV) \
+ ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A) \
+ compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV) \
+ compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E) \
+ compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E) \
+ compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E) \
+ ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E) \
+ epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E) \
+ documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E) \
+ ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E) \
+ eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV) \
+ eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV)
ifdef CodeGuard
-BINARIES += codeGuard/obj/release.$(PLATFORM)/CodeGuard$(E)
+BINARIES += codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E)
endif
ifdef EDASQLiteCipher
-BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SOV)
+BINARIES += eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV)
endif
# Making sure everything is in $(OBJBINDIR) and $(OBJLIBDIR)
prepinstall: $(DOC) $(BINARIES) outputdirs
ifdef WINDOWS_TARGET
- $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJBINDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
- $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJBINDIR))
- $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJBINDIR))
- $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
+ $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJBINDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJBINDIR))
+ $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJBINDIR))
+ $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJBINDIR))
+ $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJBINDIR))
ifdef EDASQLiteCipher
- $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
+ $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJBINDIR))
endif
endif
ifdef LINUX_TARGET
- $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SOV),$(OBJLIBDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
- $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SOV),$(OBJLIBDIR))
- $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SOV),$(OBJLIBDIR))
- $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SOV),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SOV),$(OBJLIBDIR))
+ $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SOV),$(OBJLIBDIR))
+ $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SOV),$(OBJLIBDIR))
+ $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SOV),$(OBJLIBDIR))
ifdef EDASQLiteCipher
- $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
+ $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SOV),$(OBJLIBDIR))
endif
ln -sf $(LP)ecere$(SOV) $(OBJLIBDIR)$(LP)ecere$(SO).0
ln -sf $(LP)ecereCOM$(SOV) $(OBJLIBDIR)$(LP)ecereCOM$(SO).0
ifndef WINDOWS_TARGET
ifndef LINUX_TARGET
- $(call cpq,ecere/obj/release.$(PLATFORM)/$(LP)ecere$(SO),$(OBJLIBDIR))
- $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
- $(call cpq,compiler/libec/obj/release.$(PLATFORM)/$(LP)ec$(SO),$(OBJLIBDIR))
- $(call cpq,eda/libeda/obj/release.$(PLATFORM)/$(LP)EDA$(SO),$(OBJLIBDIR))
- $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecere$(SO),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/ecereCOM.release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecereCOM$(SO),$(OBJLIBDIR))
+ $(call cpq,compiler/libec/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ec$(SO),$(OBJLIBDIR))
+ $(call cpq,eda/libeda/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDA$(SO),$(OBJLIBDIR))
+ $(call cpq,eda/drivers/sqlite/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLite$(SO),$(OBJLIBDIR))
ifdef EDASQLiteCipher
- $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
+ $(call cpq,eda/drivers/sqliteCipher/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)EDASQLiteCipher$(SO),$(OBJLIBDIR))
endif
endif
endif
- $(call cpq,ide/obj/release.$(PLATFORM)/ide$(E),$(OBJBINDIR))
- $(call cpq,ear/cmd/obj/release.$(PLATFORM)/ear$(E),$(OBJBINDIR))
- $(call cpq,compiler/ecc/obj/release.$(PLATFORM)/ecc$(E),$(OBJBINDIR))
- $(call cpq,compiler/ecp/obj/release.$(PLATFORM)/ecp$(E),$(OBJBINDIR))
- $(call cpq,compiler/ecs/obj/release.$(PLATFORM)/ecs$(E),$(OBJBINDIR))
- $(call cpq,epj2make/obj/release.$(PLATFORM)/epj2make$(E),$(OBJBINDIR))
- $(call cpq,documentor/obj/release.$(PLATFORM)/documentor$(E),$(OBJBINDIR))
+ $(call cpq,ide/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ide$(E),$(OBJBINDIR))
+ $(call cpq,ear/cmd/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ear$(E),$(OBJBINDIR))
+ $(call cpq,compiler/ecc/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E),$(OBJBINDIR))
+ $(call cpq,compiler/ecp/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E),$(OBJBINDIR))
+ $(call cpq,compiler/ecs/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJBINDIR))
+ $(call cpq,epj2make/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/epj2make$(E),$(OBJBINDIR))
+ $(call cpq,documentor/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/documentor$(E),$(OBJBINDIR))
ifdef CodeGuard
- $(call cpq,codeGuard/obj/release.$(PLATFORM)/CodeGuard$(E),$(OBJBINDIR))
+ $(call cpq,codeGuard/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/CodeGuard$(E),$(OBJBINDIR))
endif
- $(call cpq,ecere/obj/vanilla.$(PLATFORM)/libecereVanilla$(A),$(OBJLIBDIR))
+ $(call cpq,ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/libecereVanilla$(A),$(OBJLIBDIR))
#TODO: Samples?
install: prepinstall actualinstall
actualinstall:
ifdef WINDOWS_TARGET
$(call mkdirq,"$(BINDIR)/")
- $(call mkdirq,"$(SLIBDIR)/")
+ $(call mkdirq,"$(DESTSLIBDIR)/")
$(call mkdirq,"$(DOCDIR)/")
- $(call cpq,$(OBJBINDIR)$(LP)ecere$(SO),"$(LIBDIR)/")
- $(call cpq,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(LIBDIR)/")
- $(call cpq,$(OBJBINDIR)$(LP)ec$(SO),"$(LIBDIR)/")
- $(call cpq,$(OBJBINDIR)$(LP)EDA$(SO),"$(LIBDIR)/")
- $(call cpq,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(LIBDIR)/")
+ $(call cpq,$(OBJBINDIR)$(LP)ecere$(SO),"$(DESTLIBDIR)/")
+ $(call cpq,$(OBJBINDIR)$(LP)ecereCOM$(SO),"$(DESTLIBDIR)/")
+ $(call cpq,$(OBJBINDIR)$(LP)ec$(SO),"$(DESTLIBDIR)/")
+ $(call cpq,$(OBJBINDIR)$(LP)EDA$(SO),"$(DESTLIBDIR)/")
+ $(call cpq,$(OBJBINDIR)$(LP)EDASQLite$(SO),"$(DESTLIBDIR)/")
ifdef EDASQLiteCipher
- $(call cpq,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(LIBDIR)/")
+ $(call cpq,$(OBJBINDIR)$(LP)EDASQLiteCipher$(SO),"$(DESTLIBDIR)/")
endif
$(call cpq,$(OBJBINDIR)ide$(E),"$(BINDIR)/")
$(call cpq,$(OBJBINDIR)ear$(E),"$(BINDIR)/")
ifdef CodeGuard
$(call cpq,$(OBJBINDIR)CodeGuard$(E),"$(BINDIR)/")
endif
- $(call cpq,$(OBJLIBDIR)libecereVanilla$(A),"$(SLIBDIR)/")
+ $(call cpq,$(OBJLIBDIR)libecereVanilla$(A),"$(DESTSLIBDIR)/")
$(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"
$(call cpq,doc/ecere.eCdoc,"$(DOCDIR)/")
$(call cpq,doc/ecereCOM.eCdoc,"$(DOCDIR)/")
endif
ifdef OSX_TARGET
- install $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/
- install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/
- install $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/
- install $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/
- install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/
+ install $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/
+ install $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/
+ install $(OBJLIBDIR)$(LP)ec$(SO) $(DESTLIBDIR)/
+ install $(OBJLIBDIR)$(LP)EDA$(SO) $(DESTLIBDIR)/
+ install $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(DESTLIBDIR)/
ifdef EDASQLiteCipher
- install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/
+ install $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(DESTLIBDIR)/
endif
install $(OBJBINDIR)ide$(E) $(BINDIR)/
install $(OBJBINDIR)ear$(E) $(BINDIR)/
ifdef CodeGuard
install $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/
endif
- install $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/
+ install $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/
install -d $(DOCDIR)/
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"
install doc/ecere.eCdoc $(DOCDIR)/
install doc/ecereCOM.eCdoc $(DOCDIR)/
install doc/EDA.eCdoc $(DOCDIR)/
- mkdir -p -m 777 $(SAMPLESDIR)
+ mkdir -p $(MANDIR)/man1
+ cp -pRf share/man/man1/* $(MANDIR)/man1
+ mkdir -p $(SAMPLESDIR)
cp -pRf samples/* $(SAMPLESDIR)
- mkdir -p -m 777 $(EXTRASDIR)
+ find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
+ mkdir -p $(EXTRASDIR)
cp -pRf extras/* $(EXTRASDIR)
+ chmod 777 $(EXTRASDIR)/audio
endif
ifndef OSX_TARGET
ifndef WINDOWS_TARGET
ifdef LINUX_TARGET
- install -D $(OBJLIBDIR)$(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SOV)
- install -D $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SOV)
- install -D $(OBJLIBDIR)$(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SOV)
- install -D $(OBJLIBDIR)$(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SOV)
- install -D $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SOV)
+ mkdir -p $(DESTLIBDIR)/ec
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SOV)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SOV)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SOV)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SOV)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SOV)
ifdef EDASQLiteCipher
- install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SOV)
endif
- ln -sf $(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SO).0
- ln -sf $(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SO).0
- ln -sf $(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SO).0
- ln -sf $(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SO).0
- ln -sf $(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SO).0
+ ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO).0
+ ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO).0
+ ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO).0
+ ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO).0
+ ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO).0
ifdef EDASQLiteCipher
- ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0
-endif
- ln -sf $(LP)ecere$(SOV) $(LIBDIR)/$(LP)ecere$(SO)
- ln -sf $(LP)ecereCOM$(SOV) $(LIBDIR)/$(LP)ecereCOM$(SO)
- ln -sf $(LP)ec$(SOV) $(LIBDIR)/$(LP)ec$(SO)
- ln -sf $(LP)EDA$(SOV) $(LIBDIR)/$(LP)EDA$(SO)
- ln -sf $(LP)EDASQLite$(SOV) $(LIBDIR)/$(LP)EDASQLite$(SO)
- mkdir -p -m 777 $(DESTDIR)$(prefix)/lib/ec
- ln -sf $(PREFIXLIBDIR)/$(LP)ecere$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)ecere$(SO)
- ln -sf $(PREFIXLIBDIR)/$(LP)ecereCOM$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)ecereCOM$(SO)
- ln -sf $(PREFIXLIBDIR)/$(LP)ec$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)ec$(SO)
- ln -sf $(PREFIXLIBDIR)/$(LP)EDA$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)EDA$(SO)
- ln -sf $(PREFIXLIBDIR)/$(LP)EDASQLite$(SOV) $(DESTDIR)$(prefix)/lib/ec/$(LP)EDASQLite$(SO)
+ ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO).0
+endif
+ ln -sf $(LP)ecere$(SOV) $(DESTLIBDIR)/$(LP)ecere$(SO)
+ ln -sf $(LP)ecereCOM$(SOV) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
+ ln -sf $(LP)ec$(SOV) $(DESTLIBDIR)/ec/$(LP)ec$(SO)
+ ln -sf $(LP)EDA$(SOV) $(DESTLIBDIR)/ec/$(LP)EDA$(SO)
+ ln -sf $(LP)EDASQLite$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLite$(SO)
+ ln -sf ../$(LP)ecere$(SOV) $(DESTLIBDIR)/ec/$(LP)ecere$(SO)
+ ln -sf ../$(LP)ecereCOM$(SOV) $(DESTLIBDIR)/ec/$(LP)ecereCOM$(SO)
ifdef EDASQLiteCipher
- ln -sf $(LP)EDASQLiteCipher$(SOV) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
+ ln -sf $(LP)EDASQLiteCipher$(SOV) $(DESTLIBDIR)/ec/$(LP)EDASQLiteCipher$(SO)
+endif
+ifndef BSD_HOST
+ install $(INSTALL_FLAGS) -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
+ install $(INSTALL_FLAGS) -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
endif
- install -D -m 644 share/pixmaps/ecere.png $(DESTDIR)$(prefix)/share/pixmaps/ecere.png
- install -D -m 644 share/applications/ecere.desktop $(DESTDIR)$(prefix)/share/applications/ecere.desktop
else
- install -D $(OBJLIBDIR)$(LP)ecere$(SO) $(LIBDIR)/$(LP)ecere$(SO)
- install -D $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(LIBDIR)/$(LP)ecereCOM$(SO)
- install -D $(OBJLIBDIR)$(LP)ec$(SO) $(LIBDIR)/$(LP)ec$(SO)
- install -D $(OBJLIBDIR)$(LP)EDA$(SO) $(LIBDIR)/$(LP)EDA$(SO)
- install -D $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(LIBDIR)/$(LP)EDASQLite$(SO)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecere$(SO) $(DESTLIBDIR)/$(LP)ecere$(SO)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ecereCOM$(SO) $(DESTLIBDIR)/$(LP)ecereCOM$(SO)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)ec$(SO) $(DESTLIBDIR)/$(LP)ec$(SO)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDA$(SO) $(DESTLIBDIR)/$(LP)EDA$(SO)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLite$(SO) $(DESTLIBDIR)/$(LP)EDASQLite$(SO)
ifdef EDASQLiteCipher
- install -D $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(LIBDIR)/$(LP)EDASQLiteCipher$(SO)
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)$(LP)EDASQLiteCipher$(SO) $(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO)
endif
endif
- install -D $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
- install -D $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
- install -D $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
- install -D $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
- install -D $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
- install -D $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
- install -D $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)ide$(E) $(BINDIR)/ide$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)ear$(E) $(BINDIR)/ear$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)ecc$(E) $(BINDIR)/ecc$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)ecp$(E) $(BINDIR)/ecp$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)ecs$(E) $(BINDIR)/ecs$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)epj2make$(E) $(BINDIR)/epj2make$(E)
+ install $(INSTALL_FLAGS) $(OBJBINDIR)documentor$(E) $(BINDIR)/documentor$(E)
ifdef CodeGuard
- install -D $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
-endif
- install -D $(OBJLIBDIR)libecereVanilla$(A) $(SLIBDIR)/libecereVanilla$(A)
- install -D -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
- 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"
- install -D -m 644 doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
- install -D -m 644 doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
- install -D -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
- mkdir -p -m 777 $(MANDIR)/man1
+ install $(INSTALL_FLAGS) $(OBJBINDIR)CodeGuard$(E) $(BINDIR)/CodeGuard$(E)
+endif
+ install $(INSTALL_FLAGS) $(OBJLIBDIR)libecereVanilla$(A) $(DESTSLIBDIR)/libecereVanilla$(A)
+ifdef BSD_HOST
+ install $(INSTALL_FLAGS) -d $(DOCDIR)
+endif
+ install $(INSTALL_FLAGS) -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
+ 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"
+ install $(INSTALL_FLAGS) -m 644 doc/ecere.eCdoc $(DOCDIR)/ecere.eCdoc
+ install $(INSTALL_FLAGS) -m 644 doc/ecereCOM.eCdoc $(DOCDIR)/ecereCOM.eCdoc
+ install $(INSTALL_FLAGS) -m 644 doc/EDA.eCdoc $(DOCDIR)/EDA.eCdoc
+ mkdir -p $(MANDIR)/man1
cp -pRf share/man/man1/* $(MANDIR)/man1
- mkdir -p -m 777 $(SAMPLESDIR)
+ mkdir -p $(SAMPLESDIR)
cp -pRf samples/* $(SAMPLESDIR)
- mkdir -p -m 777 $(EXTRASDIR)
- cp -pRf extras/* $(EXTRASDIR)
+ find $(SAMPLESDIR) -type d -exec chmod 777 {} \;
+ mkdir -p $(EXTRASDIR)
+ cp $(CPFLAGS) extras/* $(EXTRASDIR)
+ chmod 777 $(EXTRASDIR)/audio
ifdef DEBIAN_PACKAGE
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libecere0
- install -D -m644 NEWS $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
- gzip -f -9 $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-dev
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/libecere0
+ install $(INSTALL_FLAG) -m644 NEWS $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
+ gzip -n -f -9 $(DESTDIR)$(prefix)/share/doc/libecere0/changelog
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-dev
ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-dev/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-extras
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-extras
cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-extras/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-samples
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-samples
cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-samples/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/ecere-sdk
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/ecere-sdk
cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/ecere-sdk/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libec0
- ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libec0/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libecerecom0
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/libecc0
+ ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecc0/
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/libecerecom0
cp $(DESTDIR)$(prefix)/share/doc/libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libecerecom0/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libeda0
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/libeda0
ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libeda0/
- mkdir -p -m 777 $(DESTDIR)$(prefix)/share/doc/libedasqlite0
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/libedasqlite0
ln -sf ../libecere0/changelog.gz $(DESTDIR)$(prefix)/share/doc/libedasqlite0/
endif
endif
endif
uninstall:
- $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO)")
- $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO)")
- $(call rmq,"$(LIBDIR)/$(LP)ec$(SO)")
- $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO)")
- $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SO)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SO)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SO)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SO)")
ifdef EDASQLiteCipher
- $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO)")
endif
$(call rmq,"$(BINDIR)/ide$(E)")
$(call rmq,"$(BINDIR)/ear$(E)")
ifdef CodeGuard
$(call rmq,"$(BINDIR)/CodeGuard$(E)")
endif
- $(call rmq,"$(SLIBDIR)/libecereVanilla$(A)")
+ $(call rmq,"$(DESTSLIBDIR)/libecereVanilla$(A)")
$(call rmq,"$(DOCDIR)/Ecere Tao of Programming [work in progress].pdf")
$(call rmq,"$(DOCDIR)/ecere.eCdoc")
$(call rmq,"$(DOCDIR)/ecereCOM.eCdoc")
$(call rmq,"$(DOCDIR)/EDA.eCdoc")
ifdef LINUX_TARGET
- $(call rmq,"$(LIBDIR)/$(LP)ecere$(SO).0")
- $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SO).0")
- $(call rmq,"$(LIBDIR)/$(LP)ec$(SO).0")
- $(call rmq,"$(LIBDIR)/$(LP)EDA$(SO).0")
- $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SO).0")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SO).0")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SO).0")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SO).0")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SO).0")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SO).0")
ifdef EDASQLiteCipher
- $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SO).0")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SO).0")
endif
- $(call rmq,"$(LIBDIR)/$(LP)ecere$(SOV)")
- $(call rmq,"$(LIBDIR)/$(LP)ecereCOM$(SOV)")
- $(call rmq,"$(LIBDIR)/$(LP)ec$(SOV)")
- $(call rmq,"$(LIBDIR)/$(LP)EDA$(SOV)")
- $(call rmq,"$(LIBDIR)/$(LP)EDASQLite$(SOV)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ecere$(SOV)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ecereCOM$(SOV)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)ec$(SOV)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDA$(SOV)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLite$(SOV)")
ifdef EDASQLiteCipher
- $(call rmq,"$(LIBDIR)/$(LP)EDASQLiteCipher$(SOV)")
+ $(call rmq,"$(DESTLIBDIR)/$(LP)EDASQLiteCipher$(SOV)")
endif
$(call rmq,"$(DESTDIR)$(prefix)/share/pixmaps/ecere.png")
$(call rmq,"$(DESTDIR)$(prefix)/share/applications/ecere.desktop")
endif
$(call rmdirq,"$(BINDIR)/")
- $(call rmdirq,"$(LIBDIR)/")
- $(call rmdirq,"$(SLIBDIR)/")
+ $(call rmdirq,"$(DESTLIBDIR)/")
+ $(call rmdirq,"$(DESTSLIBDIR)/")
$(call rmdirq,"$(DOCDIR)/")
ifdef WINDOWS_TARGET
$(call rmdirq,"$(DESTDIR)/")
troubleshoot:
@$(call echo,Printing values of some variables.)
@$(call echo,HOST_PLATFORM=$(HOST_PLATFORM))
- @$(call echo,TARGET_PLATFORM=$(HOST_PLATFORM))
+ @$(call echo,TARGET_PLATFORM=$(TARGET_PLATFORM))
@$(call echo,PLATFORM=$(PLATFORM))
@$(call echo,LINUX_HOST=$(LINUX_HOST))
@$(call echo,LINUX_TARGET=$(LINUX_TARGET))
@$(call echo,AR=$(AR))
@$(call echo,STRIP=$(STRIP))
@$(call echo,UPX=$(UPX))
+ @$(call echo,TARGET_ARCH=$(TARGET_ARCH))
+ @$(call echo,DESTDIR=$(DESTDIR))
+ @$(call echo,PREFIXLIBDIR=$(PREFIXLIBDIR))
+ @$(call echo,ARCH=$(ARCH))
+ @$(call echo,ARCH_FLAGS=$(ARCH_FLAGS))
+ @$(call echo,GIT_REPOSITORY=$(GIT_REPOSITORY))
+ @$(call echo,DIR_VER=$(DIR_VER))
+ @$(call echo,REPOSITORY_VER=$(REPOSITORY_VER))