$(TOPDIR), make, scripts: Merged changes from V_1_2_3_33_YAPPLICATION_INIFILE_CTOR

Signed-off-by: Jan Lindemann <jan@jannet.de>
This commit is contained in:
Jan Lindemann 2012-09-02 16:06:47 +00:00 committed by Jan Lindemann
commit 78bd6215b4
12 changed files with 346 additions and 28 deletions

View file

@ -26,7 +26,7 @@ else
endif
attach:
cgdb $(EXE_PATH) -p $(PID)
gdb $(EXE_PATH) -p $(PID)
attach-ddd:
ddd $(EXE_PATH) -p $(PID)

View file

@ -769,6 +769,7 @@ ifeq ($(USE_COMPILER_OPTIMIZATION_OPTS),true)
BUILD_CPPFLAGS += -funroll-loops -O2
else
NO_OPT_FLAGS = \
-g -fno-inline -fno-omit-frame-pointer -fno-builtin -fno-optimize-sibling-calls \
-fno-inline-functions-called-once \
-fno-tree-loop-optimize \
-fno-early-inlining
@ -929,18 +930,18 @@ PREREQ += DSPCD
endif
ifneq ($(filter dspcd-ec,$(PREREQ_BUILD)),)
DSPCD_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd /opt/$(FLAVOUR_PATH_PREFIX)dspider/dspcd-ec))
DSPCD_EXE_PREFIX = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd /opt/$(FLAVOUR_PATH_PREFIX)dspider))
DSPCD_EC_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd-ec $(CVS_PROJ_DIR)/dspc/src/dspcd /opt/$(FLAVOUR_PATH_PREFIX)dspider/dspcd-ec))
DSPCD_EC_EXE_PREFIX = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd-ec $(CVS_PROJ_DIR)/dspc/src/dspcd /opt/$(FLAVOUR_PATH_PREFIX)dspider))
# include $(DSPCD_DIR)/make/public.mk
DSPIDER_DSPCD_VERSION = $(call version,$(DSPCD_DIR))
DSPIDER_DSPCD_EC_VERSION = $(call version,$(DSPCD_EC_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)dspider-dspcd-ec-run = $(DSPIDER_DSPCD_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)dspider-dspcd-ec-devel = $(DSPIDER_DSPCD_VERSION)
PREREQ_BUILD += ytools
PREREQ_BUILD += dspider-shared-ec
PREREQ_BUILD += userver
INCLUDE += -I$(DSPCD_DIR)/include
LIBFLAGS += -L$(DSPCD_EXE_PREFIX)/lib -ldspcd-ec
PREREQ += DSPCD
PREREQ_BUILD += userver xchange
INCLUDE += -I$(DSPCD_EC_DIR)/include
LIBFLAGS += -L$(DSPCD_EC_EXE_PREFIX)/lib -ldspcd-ec
PREREQ += DSPCD_EC
endif
ifneq ($(filter dsprout,$(PREREQ_BUILD)),)
@ -973,17 +974,17 @@ PREREQ += DSPIDER_SHARED
endif
ifneq ($(filter dspider-shared-ec,$(PREREQ_BUILD)),)
DSPIDER_SHARED_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/shared /opt/$(FLAVOUR_PATH_PREFIX)dspider/shared-ec))
DSPIDER_SHARED_EXE_PREFIX = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/shared /opt/$(FLAVOUR_PATH_PREFIX)dspider))
include $(DSPIDER_SHARED_DIR)/make/public.mk
DSPIDER_SHARED_VERSION = $(call version,$(DSPIDER_SHARED_DIR))
DSPIDER_SHARED_EC_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/shared-ec $(CVS_PROJ_DIR)/dspc/src/shared /opt/$(FLAVOUR_PATH_PREFIX)dspider/shared-ec))
DSPIDER_SHARED_EC_EXE_PREFIX = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/shared-ec $(CVS_PROJ_DIR)/dspc/src/shared /opt/$(FLAVOUR_PATH_PREFIX)dspider))
include $(DSPIDER_SHARED_EC_DIR)/make/public.mk
DSPIDER_SHARED_EC_VERSION = $(call version,$(DSPIDER_SHARED_EC_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)dspider-shared-ec-run = $(DSPIDER_SHARED_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)dspider-shared-ec-devel = $(DSPIDER_SHARED_VERSION)
PREREQ_BUILD += ytools
INCLUDE += -I$(DSPIDER_SHARED_DIR)/include
LIBFLAGS += -L$(DSPIDER_SHARED_EXE_PREFIX)/lib -ldspider-shared-ec
EXE_SEARCH_PATH += $(DSPIDER_SHARED_DIR)/bin
PREREQ += DSPIDER_SHARED
INCLUDE += -I$(DSPIDER_SHARED_EC_DIR)/include
LIBFLAGS += -L$(DSPIDER_SHARED_EC_EXE_PREFIX)/lib -ldspider-shared-ec
EXE_SEARCH_PATH += $(DSPIDER_SHARED_EC_DIR)/bin
PREREQ += DSPIDER_EC_SHARED
endif
ifneq ($(filter feedfs-qt,$(PREREQ_BUILD)),)
@ -1024,13 +1025,24 @@ RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)feedfs-gui-devel = $(FEEDFS_GUI_VE
PREREQ_BUILD += feedfs-utils
PREREQ_BUILD += feedfs
PREREQ_BUILD += ytools
PREREQ_BUILD += feedfs-qt
INCLUDE += -I$(FEEDFS_GUI_DIR)/include
LIBFLAGS += -L$(FEEDFS_GUI_DIR)/lib -lfeedfs-gui
EXE_SEARCH_PATH += $(FEEDFS_GUI_DIR)/bin
PREREQ += FEEDFS_GUI
endif
ifneq ($(filter feedfs-bz,$(PREREQ_BUILD)),)
FEEDFS_BZ_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfs-bz /opt/$(FLAVOUR_PATH_PREFIX)feedfs-bz))
FEEDFS_BZ_VERSION = $(call version,$(FEEDFS_BZ_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)feedfs-bz-run = $(FEEDFS_BZ_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)feedfs-bz-devel = $(FEEDFS_BZ_VERSION)
PREREQ_BUILD += feedfs-objects
INCLUDE += -I$(FEEDFS_BZ_DIR)/include
LIBFLAGS += -L$(FEEDFS_BZ_DIR)/lib -lfeedfs-bz
EXE_SEARCH_PATH += $(FEEDFS_BZ_DIR)/bin
PREREQ += FEEDFS_BZ
endif
ifneq ($(filter feedfsd,$(PREREQ_BUILD)),)
FEEDFSD_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfsd /opt/$(FLAVOUR_PATH_PREFIX)feedfsd))
FEEDFSD_VERSION = $(call version,$(FEEDFSD_DIR))
@ -1087,6 +1099,20 @@ EXE_SEARCH_PATH += $(FEEDFS_NET_DIR)/bin
PREREQ += FEEDFS_NET
endif
ifneq ($(filter feedfs-ini,$(PREREQ_BUILD)),)
FEEDFS_INI_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfs-ini /opt/$(FLAVOUR_PATH_PREFIX)feedfs-ini))
FEEDFS_INI_VERSION = $(call version,$(FEEDFS_INI_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)feedfs-ini-run = $(FEEDFS_INI_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)feedfs-ini-devel = $(FEEDFS_INI_VERSION)
PREREQ_BUILD += feedfs-objects
PREREQ_BUILD += feedfs-utils
PREREQ_BUILD += ytools
INCLUDE += -I$(FEEDFS_INI_DIR)/include
LIBFLAGS += -L$(FEEDFS_INI_DIR)/lib -lfeedfs-ini
EXE_SEARCH_PATH += $(FEEDFS_INI_DIR)/bin
PREREQ += FEEDFS_INI
endif
ifneq ($(filter feedfs-local,$(PREREQ_BUILD)),)
FEEDFS_LOCAL_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfs-local /opt/$(FLAVOUR_PATH_PREFIX)feedfs-local))
FEEDFS_LOCAL_VERSION = $(call version,$(FEEDFS_LOCAL_DIR))
@ -1253,6 +1279,44 @@ EXE_SEARCH_PATH += $(ALSART_DIR)/bin
PREREQ += ALSART
endif
ifneq ($(filter jackmix,$(PREREQ_BUILD)),)
JACKMIX_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd-plugins/jackmix /opt/$(FLAVOUR_PATH_PREFIX)dspider/jackmix))
JACKMIX_VERSION = $(call version,$(JACKMIX_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)dspider-jackmix-run = $(JACKMIX_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)dspider-jackmix-devel = $(JACKMIX_VERSION)
PREREQ_BUILD += ytools btools
INCLUDE += -I$(JACKMIX_DIR)/include
LIBFLAGS += -L$(JACKMIX_DIR)/lib -ldspider-jackmix
LD_LIB_PATH += $(JACKMIX_DIR)/dsplib
EXE_SEARCH_PATH += $(JACKMIX_DIR)/bin
PREREQ += JACKMIX
endif
ifneq ($(filter scmjm,$(PREREQ_BUILD)),)
SCMJM_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd-plugins/scmjm /opt/$(FLAVOUR_PATH_PREFIX)dspider/scmjm))
SCMJM_VERSION = $(call version,$(SCMJM_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)dspider-scmjm-run = $(SCMJM_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)dspider-scmjm-devel = $(SCMJM_VERSION)
PREREQ_BUILD += ytools
INCLUDE += -I$(SCMJM_DIR)/include
LIBFLAGS += -L$(SCMJM_DIR)/lib -ldspider-scmjm
LD_LIB_PATH += $(SCMJM_DIR)/dsplib
EXE_SEARCH_PATH += $(SCMJM_DIR)/bin
PREREQ += SCMJM
endif
ifneq ($(filter scm,$(PREREQ_BUILD)),)
SCM_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dspcd-plugins/scm /opt/$(FLAVOUR_PATH_PREFIX)dspider/scm))
SCM_VERSION = $(call version,$(SCM_DIR))
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)dspider-scm-run = $(SCM_VERSION)
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)dspider-scm-devel = $(SCM_VERSION)
PREREQ_BUILD += ytools
INCLUDE += -I$(SCM_DIR)/include
LIBFLAGS += -L$(SCM_DIR)/lib -ldspider-scm
EXE_SEARCH_PATH += $(SCM_DIR)/bin
PREREQ += SCM
endif
ifneq ($(filter dspfs,$(PREREQ_BUILD)),)
DSPFS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspfs /opt/$(FLAVOUR_PATH_PREFIX)dspfs))
DSPFS_VERSION = $(call version,$(DSPFS_DIR))
@ -1369,8 +1433,12 @@ LIBFLAGS += -L$(SCOPE_CASMIX_DIR)/lib -lscope-casmix
EXE_SEARCH_PATH += $(SCOPE_CASMIX_DIR)/bin
endif
PREREQ_INSTALL ?= $(PREREQ_BUILD)
PREREQ_RUN ?= $(PREREQ_INSTALL)
#PREREQ_INSTALL ?= $(PREREQ_BUILD)
#PREREQ_RUN ?= $(PREREQ_INSTALL)
# TODO: remove this
PREREQ_BUILD += $(PREREQ_RUN)
PREREQ_BUILD += $(PREREQ_INSTALL)
ifeq ($(USE_SNDFILE),true)
LIBFLAGS += -lsndfile

View file

@ -26,7 +26,9 @@ else
SUBDIR_TARGETS = $(filter all install clean distclean,$(MAKECMDGOALS))
endif
ifneq ($(DONT_CHECK_PREREQ_DONE),true)
PREREQ_DIRS_DONE = $(addsuffix /dirs-all.done,$(filter-out $(TOPDIR) /opt/%,$(foreach p,$(PREREQ),$($(p)_DIR))))
endif
all: dirs-all.done
install: dirs-install.done
@ -40,20 +42,24 @@ distclean: dirs.clean dirs.distclean
# explicit duplication of pattern-rule is needed, otherwise .PHONY: dirs-all.done won't match
dirs-all.done:
set -e; for d in $(SUBDIRS) ; do make -wC $$d $*; done
ifneq ($(DONT_CHECK_PREREQ_DONE),true)
touch $@
endif
dirs-%.done:
set -e; for d in $(SUBDIRS) ; do make -wC $$d $*; done
ifneq ($(DONT_CHECK_PREREQ_DONE),true)
touch $@
endif
ifeq ($(DEVELOPMENT),true)
dirs-all.done: $(wildcard $(BUILD_HDRDIR))
ifeq ($(MAKECMDGOALS),all)
ifeq ($(SUBDIR_TARGETS),all)
dirs-all.done: $(PREREQ_DIRS_DONE)
endif
ifeq ($(MAKECMDGOALS),install)
ifeq ($(SUBDIR_TARGETS),install)
dirs-all.done: $(PREREQ_DIRS_DONE)
endif

View file

@ -165,6 +165,9 @@ echo-prereq:
echo-contrib:
echo-echo:
sed '/echo-[a-z]\+:$$/ !d; s/:$$//' $(MODDIR)/make/rules.mk
trace-marks:
for f in $(ALL_CPP); do \
$(SED) 's/^{$$/{_/' $$f > $$f.rep ;\
@ -214,7 +217,7 @@ $(SO_PREFIX)%.so: %.o
endif
$(VERSION_SCRIPT):
$(MOD_SCRIPT_DIR)/make_version_script.sh $(BINARY_VERSION) > $@
sh $(MOD_SCRIPT_DIR)/make_version_script.sh $(BINARY_VERSION) > $@
ifneq ($(TARGET),mingw)
$(LIB_SO): $(VERSION_SCRIPT) $(LIB_A) $(TOPDIR)/dir_build_LIB.done

View file

@ -91,6 +91,22 @@ callgrind:
rm -f $(CORE)
valgrind --tool=callgrind $(VALGRIND_OPTS) $(EXE_PATH) $(EXE_ARGS)
callgrind-noinst:
rm -f $(CORE)
valgrind --tool=callgrind $(VALGRIND_OPTS) --instr-atstart=no $(EXE_PATH) $(EXE_ARGS)
callgrind-startinst:
ps aux | grep callgrind | grep -v "grep\|make\|callgrind_control" | awk '{print $$2}' | xargs callgrind_control --instr=on
callgrind-stopinst:
ps aux | grep callgrind | grep -v "grep\|make\|callgrind_control" | awk '{print $$2}' | xargs callgrind_control --instr=off
callgrind-dump:
ps aux | grep callgrind | grep -v "grep\|make\|callgrind_control" | awk '{print $$2}' | xargs callgrind_control --dump
snap:
killall -SIGUSR1 $(notdir $(EXE_PATH))
endif
stop:

View file

@ -3,24 +3,31 @@
# contact@jannet.de
# $Id$
all: all.link
include $(MODDIR)/make/rules.mk
ifneq ($(strip $(SRC_ALL_CPP)),)
# mandatory targets
all: all.link
install: $(ALL)
# convenience targets
link: all.link
clean-link: clean.link
# rules
all.link: $(PROJECT)
$(PROJECT):
ln -s . $@
ifeq ($(SCOPE_PREFIX),)
all.link: $(BUILD_HDRDIR)/$(PROJECT)
$(BUILD_HDRDIR)/$(PROJECT):
cd $(BUILD_HDRDIR) && ln -s . $(PROJECT)
endif
$(LIB_SO): $(OBJ)
all.done: $(PREREQ_DONE) $(BUILD_HDR) $(BUILD_EXE_SH) $(MEMBERS) $(LIB_A) $(LIB_SO)

View file

@ -83,7 +83,7 @@ do-install-links:
}; \
done; \
git-init:
git-init-from-cvs:
@if [ -e .git ]; then \
echo $(TOPDIR)/.git exists, aborting ;\
exit 1 ;\
@ -92,6 +92,16 @@ git-init:
list-cvs-files.sh -f | xargs git add
git commit -m "initial checkin of $(RPM_VERSION)"
WHOAMI = $(shell whoami)
REMOTE_GIT_DIR = /srv/git/$(WHOAMI)/proj/$(PROJECT)
git-clone-to-remote:
ssh git.jannet.de "/opt/ytools/bin/git-srv-admin.sh create-personal-project $(PROJECT)"
git remote add origin ssh://$(WHOAMI)@git.jannet.de$(REMOTE_GIT_DIR)
git config --global user.name $(FULL_NAME)
git config --global user.email $(WHOAMI)@jannet.de
git push --all origin
projects-%:
python $(MOD_SCRIPT_DIR)/build.py $* $(PROJECT)