mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
Everywhere: Merge V_1_1_29_40_POST_ACCEPTANCE
This commit is contained in:
parent
4fa387b655
commit
2939f8e3a8
29 changed files with 743 additions and 125 deletions
141
make/defs.mk
141
make/defs.mk
|
|
@ -30,6 +30,7 @@ FLAVOUR_PATH_PREFIX ?= win32/
|
|||
FLAVOUR_PATH_SUFFIX ?= /win32
|
||||
endif
|
||||
|
||||
PROJECT_DESCR_FILE ?= $(wildcard $(TOPDIR)/doc/share/project.txt)
|
||||
PROJECT ?= $(patsubst $(FLAVOUR_PREFIX)%,%,$(notdir $(shell cd $(TOPDIR); pwd | sed 's/.*\///; s/-[0-9].*//')))
|
||||
PROJECT_SHORT_NAME ?= $(PROJECT)
|
||||
PROJECT_CAPNAME = $(shell echo $(PROJECT) | tr [a-z] [A-Z] | sed 's/-/_/g')
|
||||
|
|
@ -177,7 +178,10 @@ SRC_HEADERED += $(shell if [ "$(LOCAL_SRC)" ]; then grep -ic "it servic
|
|||
SRC_UNHEADERED += $(filter-out $(SRC_HEADERED),$(LOCAL_SRC))
|
||||
LOCAL_C += $(wildcard *.c)
|
||||
LOCAL_CPP += $(wildcard *.cc *.cpp *.C)
|
||||
LOCAL_H += $(wildcard *.h *.H)
|
||||
SFILES += $(wildcard *.S)
|
||||
PREREQ_H += $(foreach dir,$(PREREQ_DIR),$(wildcard $(dir)/*.h))
|
||||
ALL_H += $(LOCAL_H) $(PREREQ_H)
|
||||
SRC_ALL_CPP += $(LOCAL_C) $(LOCAL_CPP) $(LOCAL_H)
|
||||
SRC_C += $(filter %.c, $(SRC_ALL_CPP))
|
||||
SRC_CPP += $(filter %.cc %.cpp %.C, $(SRC_ALL_CPP))
|
||||
|
|
@ -226,7 +230,8 @@ INSTALL_CFGDIR ?= $(CONFIG_DIR)
|
|||
else
|
||||
INSTALL_CFGDIR ?= $(CONFIG_DIR)/$(CONFIG_SUBDIR)
|
||||
endif
|
||||
INSTALLED_CFG ?= $(addprefix $(INSTALL_CFGDIR)/,$(wildcard *.conf))
|
||||
LOCAL_CFG ?= $(wildcard *.conf *.xml)
|
||||
INSTALLED_CFG ?= $(addprefix $(INSTALL_CFGDIR)/,$(LOCAL_CFG))
|
||||
|
||||
# -- SYSCFG
|
||||
SYSCFG_FILES += $(basename $(wildcard *.sysconf))
|
||||
|
|
@ -236,14 +241,10 @@ INSTALL_SYSCFGDIR ?= $(SYSCFG_DIR)
|
|||
INSTALLED_SYSCFG ?= $(addprefix $(INSTALL_SYSCFGDIR)/,$(SYSCFG_FILES))
|
||||
|
||||
# -- HDR
|
||||
# why both SRC_H <-> LOCAL_H?
|
||||
BUILD_HDRDIR ?= $(TOPDIR)/include
|
||||
LOCAL_H += $(wildcard *.h *.H)
|
||||
BUILD_HDRDIR ?= $(TOPDIR)/include/$(HDRDIR_SCOPE_SUFFIX)
|
||||
SRC_H += $(filter %.h %.H, $(SRC_ALL_CPP))
|
||||
BUILD_H = $(addprefix $(BUILD_HDRDIR)/,$(SRC_H))
|
||||
BUILD_HDR = $(addprefix $(BUILD_HDRDIR)/,$(SRC_H))
|
||||
PREREQ_H += $(foreach dir,$(PREREQ_DIR),$(wildcard $(dir)/*.h))
|
||||
ALL_H += $(LOCAL_H) $(PREREQ_H)
|
||||
INSTALL_HDRDIR ?= $(PREFIX)/include
|
||||
INSTALLED_HDR += $(addprefix $(INSTALL_HDRDIR)/,$(SRC_H))
|
||||
|
||||
|
|
@ -259,22 +260,28 @@ INSTALL_DOCDIR ?= $(PREFIX)
|
|||
INSTALLED_DOC ?= $(addprefix $(INSTALL_DOCDIR)/,$(DOCS))
|
||||
|
||||
# -- LIB
|
||||
|
||||
#BUILD_PIDIR = $(BUILD_LIBDIR)
|
||||
#BUILD_PI = $(addprefix $(BUILD_PIDIR)/,$(PLUGIN))
|
||||
#INSTALL_PIDIR = $(INSTALL_LIBDIR)
|
||||
#INSTALLED_PI = $(addprefix $(INSTALL_PIDIR)/,$(PLUGIN))
|
||||
|
||||
BUILD_LIBDIR = $(TOPDIR)/lib
|
||||
LOCAL_LIBS += $(CONTRIB_LIBS)
|
||||
LOCAL_LIBS += $(CONTRIB_LIBS) $(PLUGIN)
|
||||
ifeq ($(TARGET),mingw)
|
||||
CONTRIB_LIBS_PATH += $(CROSS_TOOL_DIR)/bin
|
||||
endif
|
||||
|
||||
LIBNAME ?= $(PROJECT)
|
||||
LIBTYPE ?= shared
|
||||
MEMBERS += $(LIB_A)($(OBJ))
|
||||
INSTALL_LIBDIR ?= $(EXE_PREFIX)/lib
|
||||
ifeq ($(USE_PROJECT_LIB),true)
|
||||
LIBNAME ?= $(PROJECT)
|
||||
MEMBERS += $(LIB_A)($(OBJ))
|
||||
VERSION_SCRIPT = $(BUILD_LIBDIR)/version.ldscript
|
||||
# TODO: use something like this as unifying variable, there are far too many
|
||||
# lib-related variables
|
||||
LOCAL_LIBS +=
|
||||
ifneq ($(TARGET),mingw)
|
||||
SHOBJS += $(patsubst %.cpp,$(SO_PREFIX)%.so,$(patsubst %.cc,$(SO_PREFIX)%.so,$(patsubst %.c,$(SO_PREFIX)%.so,$(SRC_ALL_CPP))))
|
||||
LIB_A = $(BUILD_LIBDIR)/lib$(LIBNAME).a
|
||||
SO_SUFFIX = so.$(shell echo $(VERSION) | cut -d- -f1)
|
||||
SO_PREFIX ?= lib
|
||||
|
|
@ -294,42 +301,43 @@ LIB_DEF = $(BUILD_LIBDIR)/$(LIBNAME).def
|
|||
MSVCPP_IMPLIB = $(BUILD_LIBDIR)/$(LIBNAME).lib
|
||||
LIB_SO = $(BUILD_LIBDIR)/$(LIBNAME).dll
|
||||
INSTALLED_LIB_A = $(INSTALL_LIBDIR)/lib$(LIBNAME).a
|
||||
endif
|
||||
endif # mingw
|
||||
endif # USE_PROJECT_LIB
|
||||
INSTALLED_LIB_SO = $(addprefix $(INSTALL_LIBDIR)/,$(notdir $(LIB_SO)))
|
||||
INSTALLED_DEF = $(addprefix $(INSTALL_LIBDIR)/,$(wildcard *.lib *.exp))
|
||||
INSTALLED_LIB += $(addprefix $(INSTALL_LIBDIR)/,$(LOCAL_LIBS))
|
||||
BUILD_LIB += $(addprefix $(BUILD_LIBDIR)/,$(LOCAL_LIBS))
|
||||
INSTALLED_SHOBJS += $(addprefix $(INSTALL_LIBDIR)/,$(SHOBJS))
|
||||
INSTALLED_ALL_LIBS = $(addprefix $(INSTALL_LIBDIR)/,$(wildcard *.a))
|
||||
INSTALLED_LIB += $(INSTALLED_LIB_SO) $(INSTALLED_SHOBJS) \
|
||||
$(INSTALLED_LINKS_SO) $(sort $(INSTALLED_LIB_A) $(INSTALLED_ALL_LIBS)) \
|
||||
$(INSTALLED_DEF)
|
||||
BUILD_LIB += $(LIB_SO)
|
||||
|
||||
# -- PI
|
||||
BUILD_PIDIR = $(BUILD_LIBDIR)
|
||||
BUILD_PI = $(addprefix $(BUILD_PIDIR)/,$(PLUGIN))
|
||||
INSTALL_PIDIR = $(INSTALL_LIBDIR)
|
||||
INSTALLED_PI = $(addprefix $(INSTALL_PIDIR)/,$(PLUGIN))
|
||||
## -- PI
|
||||
#BUILD_PIDIR = $(BUILD_LIBDIR)
|
||||
#BUILD_PI = $(addprefix $(BUILD_PIDIR)/,$(PLUGIN))
|
||||
#INSTALL_PIDIR = $(INSTALL_LIBDIR)
|
||||
#INSTALLED_PI = $(addprefix $(INSTALL_PIDIR)/,$(PLUGIN))
|
||||
|
||||
# -- EXE
|
||||
EXE_ALL += $(EXE) $(wildcard *.a *.dll *.so *.so.*)
|
||||
BUILD_EXE_BIN += $(addprefix $(BUILD_EXEDIR)/,$(EXE))
|
||||
EXE_SH += $(wildcard *.sh *.pl *.pm *.py *.bat)
|
||||
EXE_SH += $(patsubst %.sh.tmpl,%.sh,$(wildcard *.sh.tmpl))
|
||||
|
||||
#EXE_ALL += $(EXE) $(wildcard *.a *.dll *.so *.so.*)
|
||||
BUILD_EXE_BIN += $(addprefix $(BUILD_EXEDIR)/,$(EXE) $(EXE_SH))
|
||||
INSTALLED_EXE_BIN += $(addprefix $(INSTALL_EXEDIR)/,$(EXE_BIN))
|
||||
|
||||
BUILD_EXEDIR = $(TOPDIR)/bin
|
||||
INSTALL_EXEDIR ?= $(EXE_PREFIX)/bin
|
||||
BUILD_EXE += $(BUILD_EXE_BIN)
|
||||
INSTALLED_EXE += $(INSTALL_EXEDIR)/$(EXE) $(INSTALLED_EXE_BIN)
|
||||
INSTALLED_EXE += $(addprefix $(INSTALL_EXEDIR)/,$(EXE) $(EXE_SH)) $(INSTALLED_EXE_BIN)
|
||||
|
||||
# -- SCRIPT
|
||||
EXE_SH += $(wildcard *.sh *.pl *.pm *.py *.bat)
|
||||
EXE_SH += $(patsubst %.sh.tmpl,%.sh,$(wildcard *.sh.tmpl))
|
||||
|
||||
BUILD_SCRIPTDIR = $(TOPDIR)/bin
|
||||
INSTALL_SCRIPTDIR ?= $(EXE_PREFIX)/bin
|
||||
BUILD_SCRIPT += $(addprefix $(BUILD_SCRIPTDIR)/,$(EXE_SH))
|
||||
INSTALLED_SCRIPT += $(addprefix $(INSTALL_SCRIPTDIR)/,$(EXE_SH))
|
||||
#BUILD_SCRIPTDIR = $(TOPDIR)/bin
|
||||
#INSTALL_SCRIPTDIR ?= $(EXE_PREFIX)/bin
|
||||
#BUILD_SCRIPT += $(addprefix $(BUILD_SCRIPTDIR)/,$(EXE_SH))
|
||||
#INSTALLED_SCRIPT += $(addprefix $(INSTALL_SCRIPTDIR)/,$(EXE_SH))
|
||||
|
||||
# -- CGI
|
||||
EXE_CGI += $(wildcard *.cgi)
|
||||
|
|
@ -340,6 +348,17 @@ INSTALL_CGIDIR = $(CGI_DIR)
|
|||
BUILD_CGI += $(addprefix $(BUILD_CGIDIR)/,$(EXE_CGI))
|
||||
INSTALLED_CGI += $(addprefix $(INSTALL_CGIDIR)/,$(EXE_CGI))
|
||||
|
||||
# -- HTML
|
||||
BUILD_HTMLDIR = $(TOPDIR)/htdocs
|
||||
LOCAL_HTML += $(wildcard *.html *.css *.php) $(IMAGES)
|
||||
HTML_SUBDIR ?= $(shell pwd | sed 's%.*/htdocs/%%')
|
||||
ifeq ($(HTML_SUBDIR),)
|
||||
INSTALL_HTMLDIR = $(PROJECT_HTMLDIR)
|
||||
else
|
||||
INSTALL_HTMLDIR = $(PROJECT_HTMLDIR)/$(HTML_SUBDIR)
|
||||
endif
|
||||
INSTALLED_HTML += $(addprefix $(INSTALL_HTMLDIR)/,$(LOCAL_HTML))
|
||||
|
||||
# -- INIT
|
||||
BUILD_INITDIR = $(TOPDIR)/bin
|
||||
INSTALL_INITDIR = $(INIT_PREFIX)/init.d
|
||||
|
|
@ -504,9 +523,7 @@ define install_local_cfg
|
|||
endef
|
||||
|
||||
define cvs_files
|
||||
for d in `find . | sed '/CVS\/Entries$$/ !d; s%CVS/Entries%%'`; do \
|
||||
sed "/^\// !d; s%^/%%; s%/.*%%; s%^%$$d%" $$d/CVS/Entries ;\
|
||||
done | sort
|
||||
sh $(MOD_SCRIPT_DIR)/list-cvs-files.sh
|
||||
endef
|
||||
|
||||
define add_flavour_prefix
|
||||
|
|
@ -526,6 +543,16 @@ define version
|
|||
$(shell cat $1/VERSION | sed 's/-.*//')
|
||||
endef
|
||||
|
||||
define install_links
|
||||
cwd=`pwd`; \
|
||||
echo "o in $(INSTALL_$(1)DIR):" ;\
|
||||
for f in $(notdir $(INSTALLED_$(1))); do \
|
||||
cd $(INSTALL_$(1)DIR); \
|
||||
echo " sudo ln -sf $$cwd/$$f" ; \
|
||||
sudo ln -sf $$cwd/$$f; \
|
||||
done;
|
||||
endef
|
||||
|
||||
# ----- local.mk
|
||||
|
||||
ifneq ($(wildcard $(MODDIR)/make/local.mk),)
|
||||
|
|
@ -554,8 +581,10 @@ endif
|
|||
CC = $(GCC)
|
||||
CPP = $(GPP)
|
||||
|
||||
PROJECTLIB_LDFLAGS += -L$(TOPDIR)/lib
|
||||
|
||||
ifeq ($(USE_PROJECT_LIB),true)
|
||||
PROJECTLIB_LDFLAGS += -l$(LIBNAME) -L$(TOPDIR)/lib
|
||||
PROJECTLIB_LDFLAGS += -l$(LIBNAME)
|
||||
endif
|
||||
|
||||
ifeq ($(USE_YTOOLS),true)
|
||||
|
|
@ -671,6 +700,21 @@ endif
|
|||
ifeq ($(USE_COMPILER_OPTIMIZATION_OPTS),true)
|
||||
CFLAGS += -funroll-loops -O2
|
||||
CPPFLAGS += -funroll-loops -O2
|
||||
else
|
||||
_NO_OPT_FLAGS = \
|
||||
-O0 \
|
||||
-fno-implicit-inline-templates \
|
||||
-fno-implement-inlines \
|
||||
-fno-default-inline \
|
||||
-fno-inline \
|
||||
-finline-limit=0 \
|
||||
-fkeep-inline-functions \
|
||||
-fno-inline-functions-called-once \
|
||||
-fno-inline-functions \
|
||||
-fno-early-inlining
|
||||
CFLAGS += $(NO_OPT_FLAGS)
|
||||
CPPFLAGS += $(NO_OPT_FLAGS)
|
||||
LDFLAGS += $(NO_OPT_FLAGS)
|
||||
endif
|
||||
|
||||
ifeq ($(USE_EXCEPTIONS_IN_C),true)
|
||||
|
|
@ -836,6 +880,18 @@ LD_LIB_PATH += $(FEEDFS_LOCAL_DIR)/lib
|
|||
EXE_SEARCH_PATH += $(FEEDFS_LOCAL_DIR)/bin
|
||||
endif
|
||||
|
||||
ifeq ($(USE_FEEDFS_REWRITE),true)
|
||||
FEEDFS_REWRITE_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfs-rewrite /opt/$(FLAVOUR_PATH_PREFIX)feedfs-rewrite))
|
||||
FEEDFS_REWRITE_VERSION = $(call version,$(FEEDFS_REWRITE_DIR))
|
||||
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)feedfs-rewrite-run = $(FEEDFS_REWRITE_VERSION)
|
||||
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)feedfs-rewrite-devel = $(FEEDFS_REWRITE_VERSION)
|
||||
USE_FEEDFS = true
|
||||
# no build-time linkage necessary, no headers exported
|
||||
LD_LIB_PATH += $(FEEDFS_REWRITE_DIR)/lib
|
||||
EXE_SEARCH_PATH += $(FEEDFS_REWRITE_DIR)/bin
|
||||
LIBFLAGS += -lboost_regex
|
||||
endif
|
||||
|
||||
ifeq ($(USE_FEEDFS_FMEMFS),true)
|
||||
FEEDFS_FMEMFS_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/feedfs-fmemfs /opt/$(FLAVOUR_PATH_PREFIX)feedfs-fmemfs))
|
||||
FEEDFS_FMEMFS_VERSION = $(call version,$(FEEDFS_FMEMFS_DIR))
|
||||
|
|
@ -1000,6 +1056,31 @@ USE_YTOOLS = true
|
|||
EXE_SEARCH_PATH += $(VALDI_DIR)/bin
|
||||
endif
|
||||
|
||||
ifeq ($(USE_WT_JANNET),true)
|
||||
USE_WT = true
|
||||
include $(MODDIR)/make/wt-defs.mk
|
||||
WT_JANNET_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/wt-jannet /opt/$(FLAVOUR_PATH_PREFIX)wt-jannet))
|
||||
WT_JANNET_VERSION = $(call version,$(WT_JANNET_DIR))
|
||||
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)wt-jannet-run = $(WT_JANNET_VERSION)
|
||||
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)wt-jannet-devel = $(WT_JANNET_VERSION)
|
||||
USE_FEEDFS = true
|
||||
INCLUDE += -I$(WT_JANNET_DIR)/include
|
||||
LIBFLAGS += -L$(WT_JANNET_DIR)/lib -lwt-jannet
|
||||
LD_LIB_PATH += $(WT_JANNET_DIR)/lib
|
||||
EXE_SEARCH_PATH += $(WT_JANNET_DIR)/bin
|
||||
endif
|
||||
|
||||
ifeq ($(USE_APACHE2_JANNET),true)
|
||||
APACHE2_JANNET_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/apache2-jannet /opt/$(FLAVOUR_PATH_PREFIX)apache2-jannet))
|
||||
APACHE2_JANNET_VERSION = $(call version,$(APACHE2_JANNET_DIR))
|
||||
RPM_REQUIRES_RUN += $(FLAVOUR_PREFIX)apache2-jannet-run = $(APACHE2_JANNET_VERSION)
|
||||
RPM_REQUIRES_DEVEL += $(FLAVOUR_PREFIX)apache2-jannet-devel = $(APACHE2_JANNET_VERSION)
|
||||
USE_FEEDFS = true
|
||||
# no build-time linkage necessary, no headers exported
|
||||
LD_LIB_PATH += $(APACHE2_JANNET_DIR)/lib
|
||||
EXE_SEARCH_PATH += $(APACHE2_JANNET_DIR)/bin
|
||||
endif
|
||||
|
||||
ifeq ($(USE_FPTEST),true)
|
||||
FPTEST_DIR = $(firstword $(wildcard $(CVS_PROJ_DIR)/fptest /opt/$(FLAVOUR_PATH_PREFIX)fptest))
|
||||
FPTEST_VERSION = $(call version,$(FPTEST_DIR))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue