mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +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
|
|
@ -9,7 +9,11 @@ SUBDIRS = deps.d defs.d
|
|||
|
||||
include $(TOPDIR)/make/proj.mk
|
||||
include $(MODDIR)/make/make.mk
|
||||
ifneq ($(MAKECMDGOALS),install-links)
|
||||
ifneq ($(MAKECMDGOALS),do-install-links)
|
||||
include $(MODDIR)/make/dirs.mk
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET),mingw)
|
||||
install: $(INSTALL_MAKEDIR)/winres.rc.tmpl
|
||||
|
|
|
|||
23
make/crontab.mk
Normal file
23
make/crontab.mk
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
include $(MODDIR)/make/defs.mk
|
||||
include $(MODDIR)/make/rules.mk
|
||||
|
||||
all:
|
||||
clean: clean.conf
|
||||
install: install_CFG install_SYSCFG install_LOGROT $(CONF_D)
|
||||
|
||||
clean.conf:
|
||||
rm -rf *.h *~ .*.swp *.done
|
||||
|
||||
ifneq ($(CONFIG_SUBDIR),)
|
||||
$(INSTALLED_CFG): $(INSTALL_CFGDIR)
|
||||
|
||||
$(INSTALL_CFGDIR):
|
||||
install -d -m $(CFGDIRMODE) -d $(CFGDIROWNER) -g $(CFGDIRGROUP) $@
|
||||
endif
|
||||
|
||||
ifneq ($(CONF_D),)
|
||||
INSTALLED_CONF_D = $(addprefix $(INSTALL_CFGDIR)/,$(CONF_D))
|
||||
$(INSTALL_CFGDIR)/$(CONF_D):
|
||||
install -d -m $(CFGDIRMODE) -d $(CFGDIROWNER) -g $(CFGDIRGROUP) $@
|
||||
install: $(INSTALLED_CONF_D)
|
||||
endif
|
||||
14
make/debugger.mk
Normal file
14
make/debugger.mk
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
CORE_DUMPER = $(shell echo -e "quit" | gdb --core=$(CORE) 2>&1 | \
|
||||
sed '/Core was generated/ !d; s/Core was generated by `//; s/ .*//' | xargs -r which)
|
||||
ifeq ($(CORE_DUMPER),)
|
||||
CORE_DUMPER = $(EXE)
|
||||
endif
|
||||
|
||||
all:
|
||||
|
||||
kdbg gdb ddd:
|
||||
$@ $(CORE_DUMPER) $(firstword $(CORE))
|
||||
|
||||
attach:
|
||||
kdbg ./$(EXE) -p `ps aux | sed "/$(EXE)/ !d; /sed/ d" | awk '{print $$2}'`
|
||||
|
||||
|
|
@ -10,7 +10,7 @@ VAR_PREFIX ?= $(PREFIX)/var
|
|||
DOC_PREFIX ?= $(PREFIX)/doc/$(PROJECT)
|
||||
EXE_PREFIX ?= $(PREFIX)
|
||||
INIT_PREFIX ?= $(EXE_PREFIX)
|
||||
CGI_DIR ?= $(PREFIX)/cgi-bin
|
||||
HTDOCS_PREFIX ?= $(ENV_PREFIX)$(HOME)/srv/www/htdocs
|
||||
SYSCFG_DIR ?= $(PREFIX)/sysconfig
|
||||
CONFIG_DIR ?= $(ENV_PREFIX)$(HOME)/etc/$(FLAVOUR_PATH_PREFIX)$(PROJECT)
|
||||
LD_CONF_DIR ?= $(ENV_PREFIX)$(HOME)/etc/ld.so.conf.d
|
||||
|
|
@ -19,6 +19,7 @@ RSYSLOG_DIR ?= $(ENV_PREFIX)$(HOME)/etc/rsyslog.d
|
|||
IMG_PREFIX ?= $(PREFIX)
|
||||
LOG_PREFIX ?= $(PREFIX)/log
|
||||
JAVA_PREFIX ?= $(PREFIX)
|
||||
HDR_SCOPE_PREFIX ?=
|
||||
|
||||
IMAGEDIR ?= $(MODDIR)/../../images
|
||||
CTRLDIR ?= $(ENV_PREFIX)$(HOME)/bin$(FLAVOUR_PATH_SUFFIX)
|
||||
|
|
@ -30,6 +31,8 @@ DOWNLOADDIRS ?= root@cvs.jannet.de:/usr/local/httpd/htdocs/www.jannet.de_443
|
|||
WORKING_DIR ?= $(ENV_PREFIX)$(HOME)
|
||||
WORKING_DIR ?= $(VAR_PREFIX)/lock
|
||||
JAVADIR ?= $(JAVA_PREFIX)/share/java
|
||||
PROJECT_HTMLDIR ?= $(HTDOCS_PREFIX)/proj/$(PROJECT)
|
||||
CGI_DIR ?= $(HTDOCS_PREFIX)/cgi-bin
|
||||
|
||||
# -- misc
|
||||
LOGID ?= $(shell id -un)-$(PROJECT)
|
||||
|
|
@ -86,6 +89,12 @@ CGIMODE ?= $(EXEMODE)
|
|||
CGIDIROWNER ?= $(EXEDIROWNER)
|
||||
CGIDIRGROUP ?= $(EXEDIRGROUP)
|
||||
CGIDIRMODE ?= $(EXEDIRMODE)
|
||||
HTMLOWNER ?= $(shell id -un)
|
||||
HTMLGROUP ?= $(shell id -gn)
|
||||
HTMLMODE ?= 644
|
||||
HTMLDIROWNER ?= $(shell id -un)
|
||||
HTMLDIRGROUP ?= $(shell id -gn)
|
||||
HTMLDIRMODE ?= 755
|
||||
LIBOWNER ?= $(EXEOWNER)
|
||||
LIBGROUP ?= $(EXEGROUP)
|
||||
LIBMODE ?= $(EXEMODE)
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ VAR_PREFIX ?= $(ENV_PREFIX)/var/$(FLAVOUR_PATH_PREFIX)opt
|
|||
DOC_PREFIX ?= $(ENV_PREFIX)/usr/share/doc/packages/$(FLAVOUR_PREFIX)$(PROJECT)
|
||||
EXE_PREFIX ?= $(PREFIX)
|
||||
INIT_PREFIX ?= $(ENV_PREFIX)/etc$(FLAVOUR_PATH_SUFFIX)
|
||||
CGI_DIR ?= $(ENV_PREFIX)/home/wwwrun/local/cgi-bin
|
||||
HTDOCS_PREFIX ?= $(ENV_PREFIX)/srv/www/htdocs
|
||||
SYSCFG_DIR ?= $(ENV_PREFIX)/etc/$(FLAVOUR_PATH_PREFIX)sysconfig
|
||||
CONFIG_DIR ?= $(ENV_PREFIX)/etc/opt/$(FLAVOUR_PATH_PREFIX)$(PROJECT)
|
||||
LD_CONF_DIR ?= $(ENV_PREFIX)/etc/ld.so.conf.d
|
||||
|
|
@ -19,6 +19,7 @@ RSYSLOG_DIR ?= $(ENV_PREFIX)/etc/rsyslog.d
|
|||
IMG_PREFIX ?= $(PREFIX)
|
||||
LOG_PREFIX ?= $(ENV_PREFIX)/var/log
|
||||
JAVA_PREFIX ?= $(PREFIX)
|
||||
HDR_SCOPE_PREFIX ?=
|
||||
|
||||
IMAGEDIR ?= $(FLAVOUR_PATH_PREFIX)$(PREFIX)/images
|
||||
CTRLDIR ?= $(ENV_PREFIX)/etc/$(FLAVOUR_PATH_PREFIX)init.d
|
||||
|
|
@ -30,6 +31,8 @@ DOWNLOADDIRS ?= root@cvs.jannet.de:/usr/local/httpd/htdocs/www.jannet.de_443
|
|||
WORKING_DIR ?= $(VAR_PREFIX)/coredumps
|
||||
WORKING_DIR ?= $(VAR_PREFIX)/lock
|
||||
JAVADIR ?= $(JAVA_PREFIX)/share/java
|
||||
PROJECT_HTMLDIR ?= $(HTDOCS_PREFIX)/proj/$(PROJECT)
|
||||
CGI_DIR ?= $(HTDOCS_PREFIX)/cgi-bin
|
||||
|
||||
# -- misc
|
||||
LOGID ?= $(PROJECT)
|
||||
|
|
@ -87,6 +90,12 @@ CGIMODE ?= $(EXEMODE)
|
|||
CGIDIROWNER ?= $(EXEDIROWNER)
|
||||
CGIDIRGROUP ?= $(EXEDIRGROUP)
|
||||
CGIDIRMODE ?= $(EXEDIRMODE)
|
||||
HTMLOWNER ?= root
|
||||
HTMLGROUP ?= root
|
||||
HTMLMODE ?= 644
|
||||
HTMLDIROWNER ?= root
|
||||
HTMLDIRGROUP ?= root
|
||||
HTMLDIRMODE ?= 755
|
||||
LIBOWNER ?= $(EXEOWNER)
|
||||
LIBGROUP ?= $(EXEGROUP)
|
||||
LIBMODE ?= $(EXEMODE)
|
||||
|
|
|
|||
|
|
@ -14,3 +14,5 @@ install-dir.done:
|
|||
|
||||
done.clean:
|
||||
rm -f *.done
|
||||
|
||||
install-links:
|
||||
|
|
|
|||
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))
|
||||
|
|
|
|||
|
|
@ -14,3 +14,5 @@ install-dir.done:
|
|||
|
||||
done.clean:
|
||||
rm -f *.done
|
||||
|
||||
install-links:
|
||||
|
|
|
|||
|
|
@ -20,8 +20,10 @@ install:
|
|||
else
|
||||
.PHONY: $(SUBDIRS_TO_ITERATE)
|
||||
|
||||
#all subdirs:
|
||||
# $(make_subdirs)
|
||||
ifeq ($(MAKECMDGOALS),)
|
||||
all:
|
||||
$(make_subdirs)
|
||||
endif
|
||||
|
||||
$(MAKECMDGOALS):
|
||||
$(make_subdirs_target)
|
||||
|
|
|
|||
|
|
@ -22,6 +22,13 @@ INSTALL_DOXYGEN_DIR ?= $(DOC_PREFIX)/devel
|
|||
DOC_FILES = $(IMAGEDIR)/jannet_08.png
|
||||
DOXYGEN_CONF ?= doxygen.conf
|
||||
|
||||
# replaced pattern defaults
|
||||
DOC_FILE_PATTERNS ?= *.h
|
||||
DOC_INPUT_DIRS ?= $(TOPDIR)/include
|
||||
DOC_SRC_IS_JAVA ?= NO
|
||||
DOC_EXCLUDE_FILES ?=
|
||||
DOC_INCLUDE_PATH ?=
|
||||
|
||||
all: html
|
||||
install: install.done
|
||||
distclean: clean
|
||||
|
|
@ -34,11 +41,16 @@ html: doxygen.done cpfiles.done
|
|||
|
||||
%: %.tmpl
|
||||
cat $< \
|
||||
| sed "s/__VERSION__/$(VERSION)/" \
|
||||
| sed "s/__VERSION__/$(DIST_VERSION)/" \
|
||||
| sed "s/__PROJECT__/$(PROJECT)/" \
|
||||
| sed "s/__PROJECT_CAPNAME__/$(PROJECT_CAPNAME)/" \
|
||||
| sed "s/__OUTPUT_DIR__/$(OUTPUT_DIR)/" \
|
||||
| sed "s%__PROJECT_TOPDIR__%$(TOPDIR)%" \
|
||||
| sed "s%__FILE_PATTERNS__%$(DOC_FILE_PATTERNS)%" \
|
||||
| sed "s%__INPUT_DIRS__%$(DOC_INPUT_DIRS)%" \
|
||||
| sed "s%__SRC_IS_JAVA__%$(DOC_SRC_IS_JAVA)%" \
|
||||
| sed "s%__EXCLUDE_FILES__%$(DOC_EXCLUDE_FILES)%" \
|
||||
| sed "s%__INCLUDE_PATH__%$(DOC_INCLUDE_PATH)%" \
|
||||
> $@
|
||||
|
||||
doxygen.done: $(UNTEMPLATED)
|
||||
|
|
|
|||
|
|
@ -10,8 +10,6 @@ all: $(EXE) $(BUILD_EXE_BIN) $(STRIP_DONE)
|
|||
install: $(INSTALLED_EXE) $(INSTALLED_EXE_BIN)
|
||||
run test: all.dirs $(EXE) $(EXE_BIN)
|
||||
strace: $(EXE) $(EXE_BIN)
|
||||
kdbg gdb ddd:
|
||||
debug: gdb
|
||||
|
||||
clean: execlean localclean profclean
|
||||
|
||||
|
|
|
|||
13
make/htdocs.mk
Normal file
13
make/htdocs.mk
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# generic utility modules
|
||||
# (c) 2001 jannet it services
|
||||
# contact@jannet.de
|
||||
# $Id$
|
||||
|
||||
include $(MODDIR)/make/defs.mk
|
||||
include $(MODDIR)/make/rules.mk
|
||||
|
||||
all:
|
||||
install: install_HTML
|
||||
clean: textclean localclean doneclean
|
||||
test:
|
||||
|
||||
|
|
@ -1,15 +1,22 @@
|
|||
include $(MODDIR)/make/defs.mk
|
||||
include $(MODDIR)/make/rules.mk
|
||||
|
||||
# variables
|
||||
#PROJ_H ?= $(PROJECT).h
|
||||
SRC_H += $(PROJ_H)
|
||||
SRC_H += $(PROJ_H) $(wildcard $(HDRDIR_SCOPE_SUFFIX)/*.h)
|
||||
|
||||
# mandatory targets
|
||||
all: $(PROJ_H)
|
||||
clean: clean.include
|
||||
install: install_HDR
|
||||
|
||||
# not wäry naaice
|
||||
ifneq ($(HDRDIR_SCOPE_SUFFIX),)
|
||||
install_HDR: dir_install_hdr_suffix.done
|
||||
|
||||
dir_install_hdr_suffix.done:
|
||||
$(INSTALL) -d -o $(HDRDIROWNER) -g $(HDRDIRGROUP) -m $(HDRDIRMODE) $(INSTALL_HDRDIR)/$(HDRDIR_SCOPE_SUFFIX)
|
||||
touch $@
|
||||
endif
|
||||
|
||||
# convenience targets
|
||||
project-header: $(PROJ_H)
|
||||
|
||||
|
|
@ -26,3 +33,10 @@ $(PROJ_H): $(filter-out $(PROJ_H) $(PROJECT)/$(PROJ_H),$(wildcard *.h $(PROJECT)
|
|||
echo "#endif /* #ifndef _$(PROJECT_CAPNAME)_H */" >> $@.tmp
|
||||
mv $@.tmp $@
|
||||
|
||||
install-links:
|
||||
DEVELOPMENT=false make do-install-links
|
||||
|
||||
do-install-links:
|
||||
@$(call install_links,HDR)
|
||||
|
||||
include $(MODDIR)/make/rules.mk
|
||||
|
|
|
|||
|
|
@ -48,6 +48,10 @@ echo.libs:
|
|||
@echo INSTALLED_LIB_SO = $(INSTALLED_LIB_SO)
|
||||
@echo INSTALLED_LIB = $(INSTALLED_LIB)
|
||||
|
||||
install-links:
|
||||
l=$(shell pwd)/$(notdir $(INSTALLED_LIB_SO)) ;\
|
||||
cd $(dir $(INSTALLED_LIB_SO)) &&\
|
||||
sudo ln -sf $$l
|
||||
# ------------------------------------------ contrib libraries
|
||||
# deps on mandatory targets
|
||||
all: $(CONTRIB_LIBS)
|
||||
|
|
@ -79,3 +83,4 @@ clean: clean.winres
|
|||
#%.o : %.rc
|
||||
# $(WINDRES) $^ -o $@
|
||||
endif
|
||||
|
||||
|
|
|
|||
|
|
@ -29,3 +29,9 @@ $(INSTALL_PCKG_DEFS_DIR)/$(PROJECT).mk: pckg-defs.mk
|
|||
mkdir -p $(dir $@)
|
||||
$(INSTALL) -m $(MAKEMODE) -o $(MAKEOWNER) -g $(MAKEGROUP) $< $@
|
||||
|
||||
install-links:
|
||||
DEVELOPMENT=false make do-install-links
|
||||
|
||||
do-install-links:
|
||||
@$(call install_links,MAKE)
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@
|
|||
# $Id$
|
||||
|
||||
include $(MODDIR)/make/defs.mk
|
||||
include $(MODDIR)/make/debugger.mk
|
||||
include $(MODDIR)/make/ldlibpath.mk
|
||||
include $(MODDIR)/make/plugin-defs.mk
|
||||
include $(MODDIR)/make/rules.mk
|
||||
include $(MODDIR)/make/depend.mk
|
||||
|
|
@ -12,7 +14,7 @@ include $(MODDIR)/make/backup.mk
|
|||
LOCAL_CPPFLAGS += -D_PLUGIN
|
||||
LOCAL_CFLAGS += -D_PLUGIN
|
||||
|
||||
all: build_PI
|
||||
install: install_PI
|
||||
all: build_LIB
|
||||
install: install_LIB
|
||||
clean: execlean localclean profclean
|
||||
distclean: clean
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
CREATE_DEVEL ?= true
|
||||
UPLOAD_SH = $(MOD_SCRIPT_DIR)/upload.sh
|
||||
RPM_PROJECT ?= $(FLAVOUR_PREFIX)$(PROJECT)
|
||||
MKSPEC_SH ?= $(MOD_SCRIPT_DIR)/mkspec_wrapper.sh $(TOPDIR)/make/mkspec.sh
|
||||
LOCAL_MKSPEC_SH ?= $(TOPDIR)/make/mkspec.sh
|
||||
MKSPEC_SH ?= $(MOD_SCRIPT_DIR)/mkspec_wrapper.sh $(LOCAL_MKSPEC_SH)
|
||||
FTP_SRC_GROUP ?= $(shell id -g)
|
||||
FTP_SRC_USER ?= $(shell whoami)
|
||||
FTP_RUN_GROUP ?= $(shell id -g)
|
||||
|
|
@ -69,20 +70,36 @@ ftag: ftag.dist
|
|||
rpm-upload-stable: rpm-upload-STABLE.dist
|
||||
rpm-upload-rc: rpm-upload-RC.dist
|
||||
|
||||
rpm-clean: clean.rpm
|
||||
rpm-clean: clean.rpm clean.mkspec
|
||||
rpm-uninstall: config rpmuninstall.dist
|
||||
rpm-build: config rpmbuild.dist
|
||||
rpm-install: config rpminstall.dist
|
||||
rpm-reinstall: rpm-uninstall rpm-clean rpm-install
|
||||
rpm-rebuild: rpm-clean rpm-build
|
||||
|
||||
clean.rpm:
|
||||
rm -rf $(DIST_DIR) *.dist CURRENT_RPM_SRC
|
||||
|
||||
ifeq ($(PROJECT_DESCR_FILE),)
|
||||
|
||||
clean.mkspec:
|
||||
|
||||
else
|
||||
|
||||
$(LOCAL_MKSPEC_SH): $(PROJECT_DESCR_FILE)
|
||||
sh $(MOD_SCRIPT_DIR)/create-mkspec.sh $< > $@.tmp
|
||||
mv $@.tmp $@
|
||||
|
||||
clean.mkspec:
|
||||
rm -f $(LOCAL_MKSPEC_SH) $(LOCAL_MKSPEC_SH).tmp
|
||||
|
||||
endif
|
||||
|
||||
src-dir.dist:
|
||||
mkdir -p $(DIST_SRC_DIR)
|
||||
touch $@
|
||||
|
||||
cpfiles.dist: src-dir.dist
|
||||
cpfiles.dist: src-dir.dist $(LOCAL_MKSPEC_SH)
|
||||
rm -rf $(DIST_SRC_DIR)/*
|
||||
$(cvs_files) | grep -v VERSION | cpio -o -H newc | ( cd $(DIST_SRC_DIR); cpio --make-directories -i)
|
||||
sh $(MKSPEC_SH) -V $(RPM_VERSION) -S $(notdir $(PCKG_TAR)) -N $(RPM_PROJECT) \
|
||||
|
|
|
|||
|
|
@ -162,10 +162,6 @@ trace-marks:
|
|||
|
||||
ifneq ($(TARGET),mingw)
|
||||
ldd:
|
||||
ifneq ($(wildcard *.o),)
|
||||
@echo "======= objects:"
|
||||
@for o in *.o; do echo "------- $$o"; ldd $$o; done
|
||||
endif
|
||||
ifneq ($(wildcard *.so),)
|
||||
@echo "======= libraries:"
|
||||
@for o in *.so; do echo "------- $$o"; ldd $$o; done
|
||||
|
|
@ -279,12 +275,36 @@ check_not_empty_$(1):
|
|||
fi
|
||||
endef
|
||||
|
||||
INSTALLATION_FILE_TYPES += LIB PI HDR EXE SCRIPT INIT DOC PROFILE MAKE CFG \
|
||||
SYSCFG IMG LOG JAVA LD_CONF CGI LOGROT RSYSLOG CRONTAB
|
||||
INSTALLATION_FILE_TYPES += LIB HDR EXE INIT DOC PROFILE MAKE CFG \
|
||||
SYSCFG IMG LOG JAVA LD_CONF CGI LOGROT RSYSLOG CRONTAB HTML
|
||||
|
||||
#$(foreach attr,OWNER GROUP MODE,$(foreach type, $(INSTALLATION_FILE_TYPES),\
|
||||
# $(eval $(call std_install_rules,$(type)$(attr)))))
|
||||
|
||||
# --- special installation rules, that the general rules below dont catch
|
||||
# for whatever reason >
|
||||
%: %.init
|
||||
cp $< $@
|
||||
|
||||
# don't know why %: %.init from above doesn't remake %
|
||||
$(INSTALL_INITDIR)/%: %.init | $(INSTALL_INITDIR)
|
||||
$(INSTALL) -o $(INITOWNER) -g $(INITGROUP) -m $(INITMODE) $< $@
|
||||
|
||||
$(INSTALL_LOGROTDIR)/%: %.logrotate | $(INSTALL_LOGROTDIR)
|
||||
$(INSTALL) -o $(LOGROTOWNER) -g $(LOGROTGROUP) -m $(LOGROTMODE) $< $@
|
||||
|
||||
$(INSTALL_RSYSLOGDIR)/%.conf: %.rsyslog | $(INSTALL_RSYSLOGDIR)
|
||||
$(INSTALL) -o $(RSYSLOGOWNER) -g $(RSYSLOGGROUP) -m $(RSYSLOGMODE) $< $@
|
||||
|
||||
%: %.sysconf
|
||||
cp $< $@
|
||||
|
||||
# don't know why %: %.sysconf from above doesn't remake %
|
||||
$(INSTALL_SYSCFGDIR)/%: %.sysconf | $(INSTALL_SYSCFGDIR)
|
||||
$(INSTALL) -o $(INITOWNER) -g $(INITGROUP) -m $(INITMODE) $< $@
|
||||
|
||||
# --- special installation rules <
|
||||
|
||||
define std_install_rules
|
||||
|
||||
#build_dir_$(1): $$(TOPDIR)/dir_build_$(1).done
|
||||
|
|
@ -304,43 +324,24 @@ $$(BUILD_$(1)DIR)/%: % $$(TOPDIR)/dir_build_$(1).done
|
|||
fi
|
||||
|
||||
$$(TOPDIR)/dir_install_$(1).done:
|
||||
@if [ -n "$$(INSTALL_$(1)DIR)" ]; then \
|
||||
$$(INSTALL) -d -o $$($(1)DIROWNER) -g $$($(1)DIRGROUP) -m $$($(1)DIRMODE) $$(INSTALL_$(1)DIR) ;\
|
||||
echo $$(INSTALL) -d -o $$($(1)DIROWNER) -g $$($(1)DIRGROUP) -m $$($(1)DIRMODE) $$(INSTALL_$(1)DIR) ;\
|
||||
fi
|
||||
#@if [ -n "$$(INSTALL_$(1)DIR)" ]; then \
|
||||
# $$(INSTALL) -d -o $$($(1)DIROWNER) -g $$($(1)DIRGROUP) -m $$($(1)DIRMODE) $$< ;\
|
||||
# echo $$(INSTALL) -d -o $$($(1)DIROWNER) -g $$($(1)DIRGROUP) -m $$($(1)DIRMODE) $$< ;\
|
||||
#fi
|
||||
touch $$@
|
||||
|
||||
$$(INSTALL_$(1)DIR)/%: % $$(TOPDIR)/dir_install_$(1).done
|
||||
$$(INSTALL_$(1)DIR):
|
||||
$$(INSTALL) -d -o $$($(1)DIROWNER) -g $$($(1)DIRGROUP) -m $$($(1)DIRMODE) $$@
|
||||
|
||||
# old prereq $$(TOPDIR)/dir_install_$(1).done
|
||||
|
||||
$$(INSTALL_$(1)DIR)/%: % | $$(INSTALL_$(1)DIR)
|
||||
$$(INSTALL) -o $$($(1)OWNER) -g $$($(1)GROUP) -m $$($(1)MODE) $$< $$@
|
||||
|
||||
endef
|
||||
|
||||
$(foreach type, $(INSTALLATION_FILE_TYPES), $(eval $(call std_install_rules,$(type))))
|
||||
|
||||
# ---
|
||||
# doesn't work, dunno why
|
||||
%: %.init
|
||||
cp $< $@
|
||||
|
||||
# don't know why %: %.init from above doesn't remake %
|
||||
$(INSTALL_INITDIR)/%: %.init
|
||||
$(INSTALL) -o $(INITOWNER) -g $(INITGROUP) -m $(INITMODE) $< $@
|
||||
|
||||
$(INSTALL_LOGROTDIR)/%: %.logrotate
|
||||
$(INSTALL) -o $(LOGROTOWNER) -g $(LOGROTGROUP) -m $(LOGROTMODE) $< $@
|
||||
|
||||
$(INSTALL_RSYSLOGDIR)/%.conf: %.rsyslog
|
||||
$(INSTALL) -o $(RSYSLOGOWNER) -g $(RSYSLOGGROUP) -m $(RSYSLOGMODE) $< $@
|
||||
|
||||
%: %.sysconf
|
||||
cp $< $@
|
||||
|
||||
# don't know why %: %.sysconf from above doesn't remake %
|
||||
$(INSTALL_SYSCFGDIR)/%: %.sysconf
|
||||
$(INSTALL) -o $(INITOWNER) -g $(INITGROUP) -m $(INITMODE) $< $@
|
||||
|
||||
# ---
|
||||
|
||||
$(sort $(LINKS_SO)):
|
||||
cd $(dir $@); ln -sf $(shell echo $@ | sed -e 's/\.so$$\|\.so.*$$//').$(SO_SUFFIX) $(notdir $@)
|
||||
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ include $(MODDIR)/make/defs.mk
|
|||
BUILD_HDR =
|
||||
include $(MODDIR)/make/rules.mk
|
||||
include $(MODDIR)/make/ldlibpath.mk
|
||||
include $(MODDIR)/make/debugger.mk
|
||||
|
||||
all:
|
||||
install:
|
||||
|
|
@ -54,16 +55,10 @@ abort:
|
|||
|
||||
strace: $(EXE) $(EXE_BIN)
|
||||
strace -f ./$(EXE) $(EXE_ARGS)
|
||||
kdbg gdb ddd:
|
||||
$@ $(EXE) $(firstword $(CORE))
|
||||
attach:
|
||||
kdbg ./$(EXE) -p `ps aux | sed "/$(EXE)/ !d; /sed/ d" | awk '{print $$2}'`
|
||||
|
||||
kcg:
|
||||
kcachegrind callgrind.*
|
||||
|
||||
debug: gdb
|
||||
|
||||
clean: runclean localclean
|
||||
|
||||
start.bat:
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
all.done: $(BUILD_SCRIPT)
|
||||
all: build_SCRIPT build_CGI
|
||||
install: install_INIT install_SCRIPT install_CGI
|
||||
all: build_EXE build_CGI
|
||||
install: install_INIT install_EXE install_CGI
|
||||
clean:allclean localclean doneclean textclean clean.init
|
||||
test:
|
||||
|
||||
|
|
|
|||
|
|
@ -3,11 +3,16 @@
|
|||
# contact@jannet.de
|
||||
# $Id$
|
||||
|
||||
include $(MODDIR)/make/defs.mk
|
||||
|
||||
LDFLAGS += -shared
|
||||
BUILD_SHOBJS = $(addprefix $(BUILD_LIBDIR)/, $(SHOBJS))
|
||||
SHOBJS = $(patsubst %.cpp,$(SO_PREFIX)%.so,$(patsubst %.cc,$(SO_PREFIX)%.so,$(patsubst %.c,$(SO_PREFIX)%.so,$(SRC_ALL_CPP))))
|
||||
INSTALLED_SHOBJS += $(addprefix $(INSTALL_LIBDIR)/,$(SHOBJS))
|
||||
INSTALLED_ALL_LIBS += $(INSTALLED_SHOBJS)
|
||||
|
||||
include $(MODDIR)/make/defs.mk
|
||||
include $(MODDIR)/make/ldlibpath.mk
|
||||
include $(MODDIR)/make/debugger.mk
|
||||
include $(MODDIR)/make/rules.mk
|
||||
|
||||
all: $(SHOBJS) $(BUILD_SHOBJS)
|
||||
|
|
|
|||
|
|
@ -25,8 +25,6 @@ all: $(EXE)
|
|||
install: $(INSTALLED_EXE) $(INSTALLED_EXE_BIN)
|
||||
run: all.dirs $(EXE) $(EXE_BIN)
|
||||
strace: $(EXE) $(EXE_BIN)
|
||||
kdbg gdb ddd:
|
||||
debug: gdb
|
||||
|
||||
#$(LIB_SO): $(LIB_A)
|
||||
#$(EXE): $(LIB_SO)
|
||||
|
|
|
|||
|
|
@ -41,3 +41,24 @@ prefix.done:
|
|||
mkdir -p $(PREFIX)
|
||||
touch $@
|
||||
|
||||
install-links:
|
||||
DEVELOPMENT=false make do-install-links
|
||||
|
||||
do-install-links:
|
||||
@@cwd=`pwd`; \
|
||||
echo "o in $(INSTALL_LIBDIR):" ;\
|
||||
find lib -name '*.so' -o -name '*.so.*' -o -name '*.a' -o -name '*.dll' | \
|
||||
sed 's%^\./%%' | \
|
||||
while read f; do \
|
||||
cd $(INSTALL_LIBDIR); \
|
||||
echo " sudo ln -sf $$cwd/$$f" ; \
|
||||
sudo ln -sf $$cwd/$$f; \
|
||||
done; \
|
||||
echo "o in $(INSTALL_EXEDIR):" ;\
|
||||
find bin -type f -a -perm -u+x | \
|
||||
sed 's%^\./%%' | \
|
||||
while read f; do \
|
||||
cd $(INSTALL_EXEDIR); \
|
||||
echo " sudo ln -sf $$cwd/$$f" ; \
|
||||
sudo ln -sf $$cwd/$$f; \
|
||||
done
|
||||
|
|
|
|||
20
make/wt-defs.mk
Normal file
20
make/wt-defs.mk
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
ifeq ($(USE_WT),true)
|
||||
|
||||
ifeq ($(USE_WT_FASTCGI),true)
|
||||
PROJECT_LDFLAGS += -lwtfcgi
|
||||
endif
|
||||
|
||||
ifeq ($(USE_WT_HTTPD),true)
|
||||
PROJECT_LDFLAGS += -lwthttp
|
||||
PROJECT_CFLAGS += -DCONNECTOR_HTTP=YES
|
||||
PROJECT_CPPFLAGS+= -DCONNECTOR_HTTP=YES
|
||||
endif
|
||||
|
||||
ifeq ($(USE_WT_DBO),true)
|
||||
PROJECT_LDFLAGS += -lwtdbopostgres -lwtdbosqlite3 -lwtdbo
|
||||
endif
|
||||
|
||||
PROJECT_LDFLAGS += -lwtext -lwt
|
||||
|
||||
endif
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
LOCAL_CPP += main.cpp
|
||||
YAPP_CLASS ?= $(firstword $(basename $(wildcard YApp*.h Y*.h *.h)))
|
||||
YAPP_CLASS_H = $(firstword $(wildcard $(addsuffix /$(YAPP_CLASS).h,\
|
||||
YAPP_CLASS_H ?= $(firstword $(wildcard $(addsuffix /$(YAPP_CLASS).h,\
|
||||
$(subst -I,,$(INCLUDE)))) $(YAPP_CLASS).h)
|
||||
LOCAL_CFLAGS += -DVERSION_STR=\"$(VERSION)\"
|
||||
LOCAL_CPPFLAGS += -DVERSION_STR=\"$(VERSION)\"
|
||||
|
|
@ -20,5 +20,5 @@ clean.yapp:
|
|||
rm -f main.cpp
|
||||
|
||||
main.cpp: $(YAPP_CLASS_H)
|
||||
echo -e "#include <YAppRunner.h>\n#include \"$<\"\nyapp_main($(YAPP_CLASS))" > $@
|
||||
echo -e "#include \"$<\"\n#include <YAppRunner.h>\nyapp_main($(YAPP_CLASS))" > $@
|
||||
|
||||
|
|
|
|||
108
scripts/create-mkspec.sh
Normal file
108
scripts/create-mkspec.sh
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
#!/bin/sh
|
||||
|
||||
descr=$1
|
||||
|
||||
section()
|
||||
{
|
||||
local sec="$1"
|
||||
cat "$descr" |
|
||||
cut -d\# -f1 |
|
||||
tr -s '\n' '\n' |
|
||||
sed -n "/\[$sec\]/,/\[/ p" |
|
||||
grep -v '\['
|
||||
}
|
||||
|
||||
value()
|
||||
{
|
||||
local path=$1
|
||||
local sec=`echo $1 | sed 's/\.[^.]\+$//'`
|
||||
local key=`echo $1 | sed 's/.*\.//'`
|
||||
|
||||
# echo "path=>$path<"
|
||||
# echo "sec=>$sec<"
|
||||
# echo "key=>$key<"
|
||||
|
||||
if [ "$key" = "$path" ]; then
|
||||
section $path
|
||||
return 0
|
||||
fi
|
||||
|
||||
section $sec | sed "
|
||||
/^ *$key *=/ !d
|
||||
s/^ *$key *= *//
|
||||
s/ *$//
|
||||
"
|
||||
}
|
||||
|
||||
#t()
|
||||
#{
|
||||
# echo '--------------'
|
||||
# echo $1: `value $1`
|
||||
#}
|
||||
#
|
||||
#t global.group
|
||||
#t summary
|
||||
#t description
|
||||
#exit 0
|
||||
|
||||
cat << EOT
|
||||
echo "Name: \$NAME"
|
||||
echo "Summary: `value summary`"
|
||||
echo "Version: \$VERSION"
|
||||
echo "Release: \$RELEASE"
|
||||
echo "License: Jannet IT Services proprietary license"
|
||||
echo "Group: System/Libraries"
|
||||
[ -n "\$SOURCE" ] && echo "Source: \$SOURCE"
|
||||
echo "Vendor: Jannet IT Services"
|
||||
echo "URL: http://www.jannet.de"
|
||||
echo "BuildRoot: /var/tmp/%{name}-buildroot"
|
||||
echo ""
|
||||
echo "%description"
|
||||
echo "`value description`"
|
||||
echo ""
|
||||
# ---------------------------------------
|
||||
echo "%package -n \$NAME-run"
|
||||
echo "Summary: `value summary`"
|
||||
echo "Group: `value global.group`"
|
||||
echo "Requires: \$REQUIRES_RUN"
|
||||
echo "%description -n \$NAME-run"
|
||||
echo "Runtime package"
|
||||
echo ""
|
||||
# ---------------------------------------
|
||||
echo "%package -n \$NAME-devel"
|
||||
echo "Summary: `value summary`, development package"
|
||||
echo "Group: `value global.group`"
|
||||
echo "Requires: \$REQUIRES_DEVEL"
|
||||
echo "%description -n \$NAME-devel"
|
||||
echo "Development package"
|
||||
echo ""
|
||||
# ---------------------------------------
|
||||
echo "%prep -n \$NAME-run"
|
||||
echo ""
|
||||
echo "%setup -q -n \$NAME-\$V"
|
||||
echo ""
|
||||
echo "%build"
|
||||
echo 'pwd'
|
||||
echo 'make config'
|
||||
echo 'make'
|
||||
echo ""
|
||||
echo "%install"
|
||||
echo 'rm -rf \$RPM_BUILD_ROOT'
|
||||
echo "export ENV_PREFIX=\\\$RPM_BUILD_ROOT"
|
||||
echo "export INSTALL_LOG=\$INSTALL_LOG"
|
||||
echo "mkdir -p \`dirname \$INSTALL_LOG\`"
|
||||
echo "> \$INSTALL_LOG"
|
||||
echo "make install"
|
||||
echo "cat \$INSTALL_LOG | sed \"s% \\\$RPM_BUILD_ROOT% %\" | "
|
||||
echo " grep -ve '/include/.*.h\$\|devel\|/lib.*\.a\$\|make' | sort -u > \$INSTALL_LOG.\$NAME-run"
|
||||
echo "cat \$INSTALL_LOG | sed \"s% \\\$RPM_BUILD_ROOT% %\" | "
|
||||
echo " grep -e '/include/.*.h\$\|devel\|/lib.*\.a\$\|make' | sort -u > \$INSTALL_LOG.\$NAME-devel"
|
||||
echo ""
|
||||
echo "%post -n \$NAME-run"
|
||||
echo ""
|
||||
echo "%clean"
|
||||
#echo 'rm -rf \$RPM_BUILD_ROOT'
|
||||
echo "%files -n \$NAME-run -f \$INSTALL_LOG.\$NAME-run"
|
||||
echo "%files -n \$NAME-devel -f \$INSTALL_LOG.\$NAME-devel"
|
||||
echo '%defattr (-, root, root)'
|
||||
EOT
|
||||
|
|
@ -71,6 +71,14 @@ check_ldconfig()
|
|||
echo "done."
|
||||
}
|
||||
|
||||
list_all_packages()
|
||||
{
|
||||
rpm -qa --queryformat '%{NAME}: %{VENDOR}\n' | \
|
||||
grep -i '^[^ ]\+:.*\(jannet\|c-mexx\)' | \
|
||||
sed 's/\(^[^ ]\+\) *:.*/\1/' |\
|
||||
sort -u
|
||||
}
|
||||
|
||||
cmd="$1"
|
||||
shift
|
||||
get_opts $*
|
||||
|
|
@ -120,13 +128,9 @@ checklog)
|
|||
;;
|
||||
info)
|
||||
if [ "$opt_verbose" = true ]; then
|
||||
rpm -qai | grep -iB 7 "jannet.de\|c-mexx.com"
|
||||
list_all_packages | xargs rpm -qi
|
||||
else
|
||||
rpm -qai | \
|
||||
grep -iB 7 "jannet.de\|c-mexx.com" | \
|
||||
sed '/Name/ !d; s/Name *: //; s/ *.*//' | \
|
||||
xargs rpm -q | \
|
||||
sort -u
|
||||
list_all_packages | xargs rpm -q
|
||||
fi
|
||||
;;
|
||||
cpp-glib)
|
||||
|
|
|
|||
|
|
@ -1,25 +1,188 @@
|
|||
export PATH=$PATH:/opt/ytools/bin
|
||||
|
||||
# -- private stuff not intended for use outside of this script
|
||||
_ytools_check_config_present()
|
||||
{
|
||||
if [ -z "$ytools_config_files" ]; then
|
||||
if [ "$1" = true ]; then
|
||||
ytools_log "warning: $0 tries to access configuration witout having a config file"
|
||||
fi
|
||||
return 1;
|
||||
fi
|
||||
return 0;
|
||||
}
|
||||
|
||||
_ytools_probe_default_config_paths()
|
||||
{
|
||||
[ "$ytools_config_files" ] && return 0
|
||||
|
||||
local f
|
||||
for f in \
|
||||
/etc/opt/$ytools_project/$ytools_basename.conf \
|
||||
$HOME/.$ytools_project/$ytools_basename.conf \
|
||||
$HOME/.$ytools_project/$rc \
|
||||
$HOME/.$ytools_basename/$ytools_basename.conf \
|
||||
$HOME/.$ytools_basename/$rc \
|
||||
$HOME/.$rc \
|
||||
; do
|
||||
[ -r "$f" ] && ytools_config_file="$ytools_config_files $f"
|
||||
done
|
||||
}
|
||||
|
||||
_ytools_cat_section()
|
||||
{
|
||||
if [ "$2" ]; then
|
||||
sed -n "/\[$2\]/,/[^ ]*\[/ p" $1 | sed '/[^ ]*\[/ d'
|
||||
return
|
||||
fi
|
||||
|
||||
sed -n '0,/[^ ]*\[/ p' | sed '/[^ ]*\[/ d; s/=.*/=/' $1
|
||||
}
|
||||
|
||||
_ytools_format_config()
|
||||
{
|
||||
sed '/^$/d; s/$/;/'
|
||||
}
|
||||
|
||||
_ytools_format_section()
|
||||
{
|
||||
_ytools_cat_section $* | _ytools_format_config
|
||||
}
|
||||
|
||||
_ytools_source_section()
|
||||
{
|
||||
eval `_ytools_cat_section $* | _ytools_format_config`
|
||||
}
|
||||
|
||||
# -- exported variables
|
||||
[ -z "$ytools_basename" ] && ytools_basename=`basename $0 | sed 's/\.sh$//'`
|
||||
[ -z "$ytools_project" ] && ytools_project="ytools"
|
||||
[ -z "$ytools_rc" ] && ytools_rc="$ytools_basename"rc
|
||||
[ -z "$ytools_config_files" ] && _ytools_probe_default_config_paths
|
||||
[ -z "$ytools_loggers" ] && ytools_loggers="stdout"
|
||||
|
||||
# -- exported utilities
|
||||
ytools_log_err()
|
||||
{
|
||||
echo "# $@" >&2
|
||||
}
|
||||
|
||||
ytools_log_stdout()
|
||||
{
|
||||
echo "# $@"
|
||||
}
|
||||
|
||||
ytools_log_stderr()
|
||||
{
|
||||
echo "# $@" >&2
|
||||
}
|
||||
|
||||
ytools_log_syslog()
|
||||
{
|
||||
logger -t $ytools_basename "$*"
|
||||
}
|
||||
|
||||
ytools_log()
|
||||
{
|
||||
echo $@
|
||||
local logger
|
||||
for logger in $ytools_loggers; do
|
||||
eval ytools_log_$logger "$@"
|
||||
done
|
||||
}
|
||||
|
||||
ytools_log_err()
|
||||
ytools_empty_config()
|
||||
{
|
||||
echo $@ >&2
|
||||
local o_verbose=""
|
||||
local o_section
|
||||
|
||||
set -- `getopt 'vs:' $*`
|
||||
|
||||
while [ "$1" != -- ]; do
|
||||
case $1 in
|
||||
-v)
|
||||
o_verbose=true;;
|
||||
-s)
|
||||
o_section=$2; shift;;
|
||||
*)
|
||||
ytools_log_err unknown option $1
|
||||
exit 1;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
shift
|
||||
|
||||
_ytools_check_config_present $o_verbose || return 1
|
||||
|
||||
[ ! -r "$1" ] && return
|
||||
[ "$o_verbose" ] && ytools_log o resetting config "\"$1\""
|
||||
if [ "$o_section" ]; then
|
||||
[ "$o_verbose" ] && ytools_log o resetting section "[$o_section]" of config "\"$1\""
|
||||
fi
|
||||
|
||||
eval `_ytools_format_section $1 $o_section | sed 's/=[^;]*;/=;/g'`
|
||||
}
|
||||
|
||||
ytools_empty_configs()
|
||||
{
|
||||
local section
|
||||
local c
|
||||
local o_verbose=""
|
||||
local o_section
|
||||
local opts=""
|
||||
|
||||
set -- `getopt 'vs:' $*`
|
||||
while [ "$1" != -- ]; do
|
||||
case $1 in
|
||||
-v)
|
||||
o_verbose=true
|
||||
opts="$opts -v"
|
||||
;;
|
||||
-s)
|
||||
o_section="-s $2"; shift;;
|
||||
*)
|
||||
ytools_log_err unknown option $1
|
||||
exit 1;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
shift
|
||||
|
||||
_ytools_check_config_present $o_verbose || return 1
|
||||
|
||||
for section in "" `ytools_config_sections`; do
|
||||
|
||||
for c in $ytools_config_files; do
|
||||
|
||||
ytools_empty_config -s "$section" section $opts $c
|
||||
|
||||
if [ -d $c.d ]; then
|
||||
|
||||
local dirconfs=`find $c.d -maxdepth 1 -type f`
|
||||
local f
|
||||
for f in $dirconfs; do
|
||||
ytools_empty_config -s "$section" $opts $f
|
||||
done
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
ytools_source_config()
|
||||
{
|
||||
local o_verbose=""
|
||||
local o_section
|
||||
|
||||
set -- `getopt 'v' $*`
|
||||
set -- `getopt 'vs:' $*`
|
||||
|
||||
while [ "$1" != -- ]; do
|
||||
case $1 in
|
||||
-v)
|
||||
o_verbose=true;;
|
||||
o_verbose=true
|
||||
;;
|
||||
-s)
|
||||
o_section=$2; shift;;
|
||||
*)
|
||||
ytools_log_err unknown option $1
|
||||
exit 1;;
|
||||
|
|
@ -28,25 +191,38 @@ ytools_source_config()
|
|||
done
|
||||
shift
|
||||
|
||||
[ ! -r "$1" ] && return
|
||||
[ "$o_verbose" ] && ytools_log o reading config "<$1>"
|
||||
. $1
|
||||
_ytools_check_config_present $o_verbose || return 1
|
||||
|
||||
if [ "$o_verbose" = true ]; then
|
||||
if [ "$o_section" ]; then
|
||||
ytools_log o sourcing section "[$o_section]" from config file "\"$1\""
|
||||
else
|
||||
ytools_log o sourcing config "\"$1\""
|
||||
fi
|
||||
|
||||
_ytools_cat_section $1 $o_section
|
||||
fi
|
||||
|
||||
_ytools_source_section $1 $o_section
|
||||
}
|
||||
|
||||
ytools_source_configs()
|
||||
{
|
||||
local c
|
||||
local basename=${myname/.*/}
|
||||
local rc="$basename"rc
|
||||
local project=ytools
|
||||
local source_opts=""
|
||||
local o_verbose=""
|
||||
|
||||
set -- `getopt 'v' $*`
|
||||
set -- `getopt 'vs:' $*`
|
||||
|
||||
while [ "$1" != -- ]; do
|
||||
case $1 in
|
||||
-v)
|
||||
o_verbose=true;;
|
||||
o_verbose=true
|
||||
source_opts="$source_opts -v"
|
||||
;;
|
||||
-s)
|
||||
source_opts="$source_opts -s $2"
|
||||
shift;;
|
||||
*)
|
||||
ytools_log_err unknown option $1
|
||||
exit 1;;
|
||||
|
|
@ -55,27 +231,84 @@ ytools_source_configs()
|
|||
done
|
||||
shift
|
||||
|
||||
config_files="
|
||||
/etc/opt/$project/$basename.conf
|
||||
$HOME/.$project/$basename.conf
|
||||
$HOME/.$project/$rc
|
||||
$HOME/.$basename/$basename.conf
|
||||
$HOME/.$basename/$rc
|
||||
$HOME/.$rc
|
||||
"
|
||||
_ytools_check_config_present $o_verbose || return 1
|
||||
|
||||
for c in $config_files; do
|
||||
ytools_source_config $c
|
||||
for c in $ytools_config_files; do
|
||||
ytools_source_config $source_opts $c
|
||||
if [ -d $c.d ]; then
|
||||
local dirconfs=`find $c.d -maxdepth 1 -type f`
|
||||
local f
|
||||
for f in $dirconfs; do
|
||||
ytools_source_config $f
|
||||
ytools_source_config $source_opts $f
|
||||
done
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
ytools_config_sections()
|
||||
{
|
||||
local o_verbose=""
|
||||
local o_section
|
||||
local o_file
|
||||
local o_exact=false
|
||||
|
||||
OPTIND=1
|
||||
while getopts ves:f: flag; do
|
||||
|
||||
case $flag in
|
||||
v)
|
||||
o_verbose=true;;
|
||||
s)
|
||||
o_section="$OPTARG";;
|
||||
f)
|
||||
o_file="$OPTARG";;
|
||||
e)
|
||||
o_exact=true;;
|
||||
*)
|
||||
ytools_log_err "unknown option -$flag"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
done
|
||||
|
||||
shift $(($OPTIND - 1))
|
||||
|
||||
_ytools_check_config_present $o_verbose || return 1
|
||||
|
||||
[ "$o_file" ] || o_file="$ytools_config_files"
|
||||
|
||||
if [ "$o_exact" = false ]; then
|
||||
|
||||
if [ "$o_section" ]; then
|
||||
sed "
|
||||
/^[ ]*\[$o_section\.\(.*\)\]/ !d
|
||||
s/^[ ]*\[$o_section\.\(.*\)\].*/\1/
|
||||
" $o_file 2>/dev/null | sort -u
|
||||
else
|
||||
sed "
|
||||
/^[ ]*\[\(.*\)\]/ !d
|
||||
s/^[ ]*\[\(.*\)\].*/\1/
|
||||
" $o_file 2>/dev/null | sort -u
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
if [ "$o_section" ]; then
|
||||
sed "
|
||||
/^[ ]*\[$o_section\.\([^.]*\)\]/ !d
|
||||
s/^[ ]*\[$o_section\.\([^.]*\)\].*/\1/
|
||||
" $o_file 2>/dev/null | sort -u
|
||||
else
|
||||
sed "
|
||||
/^[ ]*\[\([^.]*\)\]/ !d
|
||||
s/^[ ]*\[\([^.]*\)\].*/\1/
|
||||
" $o_file 2>/dev/null | sort -u
|
||||
fi
|
||||
fi
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
ytools_cat()
|
||||
{
|
||||
cat | sed 's/^[ ]*|//'
|
||||
|
|
|
|||
20
scripts/list-cvs-files.sh
Normal file
20
scripts/list-cvs-files.sh
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
#!/bin/sh
|
||||
|
||||
list_dirents()
|
||||
{
|
||||
local dirs=`sed '/^D\// !d; s%^D/%%; s%/.*%%' $1/CVS/Entries`
|
||||
if [ -f $1/CVS/Entries.Log ]; then
|
||||
dirs="$dirs `sed '/^A D\// !d; s%^A D/%%; s%/.*%%' $1/CVS/Entries.Log`"
|
||||
fi
|
||||
local files=`sed '/^\// !d; s%/%%; s%/.*%%; s%^%%' $1/CVS/Entries`
|
||||
local d f
|
||||
for f in $files; do
|
||||
echo $1/$f
|
||||
done
|
||||
for d in $dirs; do
|
||||
echo $1/$d
|
||||
list_dirents $1/$d
|
||||
done
|
||||
}
|
||||
|
||||
list_dirents .
|
||||
Loading…
Add table
Add a link
Reference in a new issue