diff --git a/make/defs.mk b/make/defs.mk index 2dd38bc6..a30388ef 100644 --- a/make/defs.mk +++ b/make/defs.mk @@ -210,8 +210,8 @@ DOCSUBDIRS += $(wildcard html tex info examples src) INSTALLED_VERSION_FILE = $(PREFIX)/VERSION -INSTALLED_DOCS_DIST = $(addprefix $(INSTALL_DOCDIR_DIST)/,$(DOCS)) -INSTALLED_DOCS_DEVEL = $(addprefix $(INSTALL_DOCDIR_DEVEL)/,$(DOCS)) +INSTALLED_DOCS_DIST = $(addprefix $(INSTALL_DOCDIR_DIST)/,$(DOCS)) $(INSTALLED_VERSION_FILE) +INSTALLED_DOCS_DEVEL = $(addprefix $(INSTALL_DOCDIR_DEVEL)/,$(DOCS)) $(INSTALLED_VERSION_FILE) ifneq ($(TARGET),mingw) LIB_A = $(LIBDIR)/lib$(LIBNAME).a @@ -333,6 +333,10 @@ define install_local_cfg $(INSTALL) -o $(CFGOWNER) -g $(CFGGROUP) -m $(CFGMODE) $< $@ endef +define cat_version +$(shell cat $1/VERSION | sed 's/-dev//; s/-[^-]*$$//') +endef + # ----- local.mk ifneq ($(wildcard $(MODDIR)/make/local.mk),) @@ -499,10 +503,123 @@ ifeq ($(USE_GLIB),true) endif endif -#export PROJECT PROJECT_CFLAGS PROJECT_CPPFLAGS PROJECT_LDFLAGS USE_TIMER +ifeq ($(USE_YTOOLS),true) +YTOOLS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/ytools /opt/ytools)) +YTOOLS_VERSION = $(call cat_version,$(YTOOLS_DIR)) +RPM_REQUIRES_RUN += ytools-run>=$(YTOOLS_VERSION) +RPM_REQUIRES_DEVEL += ytools-devel>=$(YTOOLS_VERSION) +endif +ifeq ($(USE_XCHANGE),true) +XCHANGE_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/xchange /opt/xchange)) +XCHANGE_VERSION = $(call cat_version,$(XCHANGE_DIR)) +RPM_REQUIRES_RUN += xchange-run>=$(XCHANGE_VERSION) +RPM_REQUIRES_DEVEL += xchange-devel>=$(XCHANGE_VERSION) +endif + +ifeq ($(USE_USERVER),true) +USERVER_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/userver /opt/userver)) +USERVER_VERSION = $(call cat_version,$(USERVER_DIR)) +RPM_REQUIRES_RUN += userver-run>=$(USERVER_VERSION) +RPM_REQUIRES_DEVEL += userver-devel>=$(USERVER_VERSION) +endif + +ifeq ($(USE_FEEDFS_UTILS),true) +FEEDFS_UTILS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfs-utils /opt/feedfs-utils)) +FEEDFS_UTILS_VERSION = $(call cat_version,$(FEEDFS_UTILS_DIR)) +RPM_REQUIRES_RUN += feedfs-utils-run>=$(FEEDFS_UTILS_VERSION) +RPM_REQUIRES_DEVEL += feedfs-utils-devel>=$(FEEDFS_UTILS_VERSION) + +USE_FEEDFS = true + +ifeq ($(USE_FEEDFS),true) +FEEDFS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/feedfs /opt/feedfs)) +FEEDFS_VERSION = $(call cat_version,$(FEEDFS_DIR)) +RPM_REQUIRES_RUN += feedfs-run>=$(FEEDFS_VERSION) +RPM_REQUIRES_DEVEL += feedfs-devel>=$(FEEDFS_VERSION) +endif +endif + +ifeq ($(USE_DSPROUT),true) +DSPROUT_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/dsprout /opt/dspider/dsprout)) +DSPROUT_VERSION = $(call cat_version,$(DSPROUT_DIR)) +RPM_REQUIRES_RUN += dsprout-run>=$(DSPROUT_VERSION) +RPM_REQUIRES_DEVEL += dsprout-devel>=$(DSPROUT_VERSION) +endif + +ifeq ($(USE_DSPIDER_SHARED),true) +SHARED_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/shared /opt/dspider/shared)) +DSPIDER_SHARED_VERSION = $(call cat_version,$(DSPIDER_SHARED_DIR)) +RPM_REQUIRES_RUN += dspider-shared-run>=$(DSPIDER_SHARED_VERSION) +RPM_REQUIRES_DEVEL += dspider-shared-devel>=$(DSPIDER_SHARED_VERSION) +endif + +ifeq ($(USE_DSPCD),true) +DSPCD_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspcd /opt/dspider/dspcd)) +include $(DSPCD_DIR)/make/public.mk +DSPIDER_DSPCD_VERSION = $(call cat_version,$(DSPCD_DIR)) +RPM_REQUIRES_RUN += dspider-dspcd-run>=$(DSPIDER_DSPCD_VERSION) +RPM_REQUIRES_DEVEL += dspider-dspcd-devel>=$(DSPIDER_DSPCD_VERSION) +endif + +ifeq ($(USE_SCOPE_CASMIX),true) +SCOPE_CASMIX_DIR = /opt/scope-casmix +SCOPE_CASMIX_VERSION = $(call cat_version,/usr/share/doc/packages/scope-casmix/VERSION) +RPM_REQUIRES_RUN += scope-casmix>=$(SCOPE_CASMIX_VERSION) +RPM_REQUIRES_DEVEL += scope-casmix-devel>=$(SCOPE_CASMIX_VERSION) +endif + +ifeq ($(USE_BTOOLS),true) +BTOOLS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/btools /opt/btools)) +BTOOLS_VERSION = $(call cat_version,$(BTOOLS_DIR)) +RPM_REQUIRES_RUN += btools-run>=$(BTOOLS_VERSION) +RPM_REQUIRES_DEVEL += btools-devel>=$(BTOOLS_VERSION) +endif + +ifeq ($(USE_CCONSOLE),true) +CCONSOLE_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/cconsole /opt/dspider/cconsole)) +CCONSOLE_VERSION = $(call cat_version,$(CCONSOLE_DIR)) +RPM_REQUIRES_RUN += cconsole-run>=$(CCONSOLE_VERSION) +RPM_REQUIRES_DEVEL += cconsole-devel>=$(CCONSOLE_VERSION) +endif + +ifeq ($(USE_JACKJART),true) +JACKJART_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/io/jackjart /opt/dspider/jackjart)) +JACKJART_VERSION = $(call cat_version,$(JACKJART_DIR)) +RPM_REQUIRES_RUN += jackjart-run>=$(JACKJART_VERSION) +RPM_REQUIRES_DEVEL += jackjart-devel>=$(JACKJART_VERSION) +endif + +ifeq ($(USE_JACKRTAI),true) +JACKRTAI_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/io/jackrtai /opt/dspider/jackrtai)) +JACKRTAI_VERSION = $(call cat_version,$(JACKRTAI_DIR)) +RPM_REQUIRES_RUN += jackrtai-run>=$(JACKRTAI_VERSION) +RPM_REQUIRES_DEVEL += jackrtai-devel>=$(JACKRTAI_VERSION) +endif + +ifeq ($(USE_ALSART),true) +ALSART_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/io/alsart /opt/dspider/alsart)) +ALSART_VERSION = $(call cat_version,$(ALSART_DIR)) +RPM_REQUIRES_RUN += alsart-run>=$(ALSART_VERSION) +RPM_REQUIRES_DEVEL += alsart-devel>=$(ALSART_VERSION) +endif + +ifeq ($(USE_JACKDUMMY),true) +JACKDUMMY_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspc/src/io/jackdummy /opt/dspider/jackdummy)) +JACKDUMMY_VERSION = $(call cat_version,$(JACKDUMMY_DIR)) +RPM_REQUIRES_RUN += jackdummy-run>=$(JACKDUMMY_VERSION) +RPM_REQUIRES_DEVEL += jackdummy-devel>=$(JACKDUMMY_VERSION) +endif + +ifeq ($(USE_DSPFS),true) +DSPFS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/dspfs /opt/dspfs)) +DSPFS_VERSION = $(call cat_version,$(DSPFS_DIR)) +RPM_REQUIRES_RUN += dspfs-run>=$(DSPFS_VERSION) +RPM_REQUIRES_DEVEL += dspfs-devel>=$(DSPFS_VERSION) +endif + +# stripped apart again in mkspec_wrapper.sh, maybe a bad idea +RPM_REQUIRES = $(RPM_REQUIRES_RUN) $(RPM_REQUIRES_DEVEL) NEW_LD_LIB_PATH = $(shell echo $(LDFLAGS) | sed 's/-[^L][^ ]*//g; s/-L[ ]*\([^ ]*\)[ ]*/\1:/g') - -