Skip to content

Commit

Permalink
doc/cfg_list: updated Makefile with list of files exporting cfg vars
Browse files Browse the repository at this point in the history
- paths to folders updated
  • Loading branch information
miconda committed Jun 3, 2017
1 parent 03aa218 commit 5d9ee9f
Showing 1 changed file with 54 additions and 37 deletions.
91 changes: 54 additions & 37 deletions doc/tutorials/cfg_list/Makefile
@@ -1,38 +1,41 @@

COREPATH=../..
COREPATH=../../../src

#include $(COREPATH)/Makefile.defs

CFG2TXT=../scripts/cdefs2doc/dump_cfg_defs.pl
CFG2DOCBOOK=../scripts/cdefs2doc/dump_cfg_defs.pl
CFG2TXT=../../scripts/cdefs2doc/dump_cfg_defs.pl
CFG2DOCBOOK=../../scripts/cdefs2doc/dump_cfg_defs.pl

# output directory for generated txt files
txt_output_dir=.
# output directory for generated docbook xml files
docbook_output_dir=docbook

# list of files containing cfg defs in the following format:
# <filename>:<cfg_grp_name>
# <filename>:<cfg_grp_name>
# can be easily updated by adding the output of:
# make diff-list (which obeys grp_exclude and file_exclude)
# or completely regenerated by replacing files_list with the output of:
# make gen-files-list
files_list= \
$(COREPATH)/cfg_core.c:core \
$(COREPATH)/sctp_options.c:sctp \
$(COREPATH)/tcp_options.c:tcp \
$(COREPATH)/modules/tm/config.c:tm \
$(COREPATH)/modules/registrar/config.c:registrar \
$(COREPATH)/modules/siputils/config.c:siputils \
$(COREPATH)/modules/maxfwd/maxfwd.c:maxfwd \
$(COREPATH)/core/cfg_core.c:core \
$(COREPATH)/core/tcp_options.c:tcp \
$(COREPATH)/modules/carrierroute/config.c:carrierroute \
$(COREPATH)/modules/debugger/debugger_config.c:debugger \
$(COREPATH)/modules/dispatcher/config.c:dispatcher \
$(COREPATH)/modules/ims_registrar_scscf/config.c:ims_registrar_scscf \
$(COREPATH)/modules/malloc_test/malloc_test.c:malloc_test \
$(COREPATH)/modules/maxfwd/maxfwd.c:maxfwd \
$(COREPATH)/modules/outbound/config.c:outbound \
$(COREPATH)/modules/registrar/config.c:registrar \
$(COREPATH)/modules/rtpengine/config.c:rtpengine \
$(COREPATH)/modules/sctp/sctp_options.c:sctp \
$(COREPATH)/modules/siputils/config.c:siputils \
$(COREPATH)/modules/stun/config.c:stun \
$(COREPATH)/modules/tls/tls_cfg.c:tls \
$(COREPATH)/modules/dispatcher/config.c:dispatcher \
$(COREPATH)/modules/tm/config.c:tm \
$(COREPATH)/modules/websocket/config.c:websocket \
$(COREPATH)/modules/outbound/config.c:outbound \
$(COREPATH)/modules/stun/config.c:stun

$(COREPATH)/modules/xlog/xlog.c:xlog

# list of excluded groups
grp_exclude=pa
Expand Down Expand Up @@ -62,14 +65,21 @@ gcc=gcc
#-I$(COREPATH)/lib -I$(COREPATH) -I/usr/include/libxml2

# defines used by gcc
c_defs=-D__CPU_i386 -D__OS_linux -DSER_VER=2099099 -DPKG_MALLOC -DSHM_MEM \
-DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP \
-DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR \
-DUSE_TLS -DTLS_HOOKS -DFAST_LOCK -DCC_GCC_LIKE_ASM \
-DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD \
-DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H \
-DHAVE_SCHED_SETSCHEDULER -DHAVE_EPOLL -DUSE_SCTP -DNAME='\"ser\"' \
-DVERSION='\"2.99.99-pre3\"' -DARCH='\"i386\"' -DOS_QUOTED='\"linux\"'
c_defs=-DNAME='\"kamailio\"' -DVERSION='\"5.1.0-dev3\"' -DARCH='\"x86_64\"' \
-DOS='linux_' -DOS_QUOTED='\"linux\"' -DCOMPILER='\"gcc 4.9.2\"' \
-D__CPU_x86_64 -D__OS_linux -DSER_VER=5001000 \
-DCFG_DIR='\"/usr/local/etc/kamailio/\"' \
-DRUN_DIR='\"/var/run/kamailio/\"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP \
-DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES \
-DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR \
-DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC \
-DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS \
-DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT \
-DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 \
-DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL \
-DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM \
-DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT \
-DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT


# common makefile vars used in defs
Expand All @@ -92,9 +102,9 @@ get_prereq=$(firstword $(subst :, ,$(1)))
# get grp from file:grp (get_grp(file:grp) => grp)
get_listed_grp=$(word 2, $(subst :, ,$(1)))

# get base file name from file:grp: get_bname(file:grp)
# get base file name from file:grp: get_bname(file:grp)
# => basename(file) without extension (e.g. get_bname(foo/bar.c:x) => bar)
#
#
get_bname=$(basename $(notdir $(call get_prereq,$(1))))

#get grp from file:grp, using the overrides
Expand Down Expand Up @@ -162,7 +172,7 @@ INCLUDES:=
# evaluate them
$$(eval $$(call get_make_vars,$$(dir $$(call get_prereq,$(1)))))
# override COREPATH (we know better)
COREPATH=../..
COREPATH=../../../src
# save the result in a per group e_idefs_<grp_name> var
$$(eval e_idefs_$$(call get_grp,$(1)):=$$(DEFS) $$(INCLUDES))

Expand Down Expand Up @@ -226,7 +236,7 @@ diff_lst=$(filter-out $(flist),$(f_found_lst))


get_core_files=$(filter-out $(COREPATH)/modules% $(COREPATH)/lib%,$(1))
sort_files=$(sort $(call get_core_files,$(1)))\
sort_files=$(sort $(call get_core_files,$(1))) \
$(sort $(filter-out $(call get_core_files,$(1)),$(1)))

# replace $(COREPATH) with the text "$(COREPATH)"
Expand Down Expand Up @@ -269,10 +279,10 @@ proper:
@rm -f $(txt_output_dir)/cfg_*.txt
@rm -f $(docbook_output_dir)/cfg_*.xml

repo_ver="sip-router"\
repo_ver="kamailio"\
"git-$(shell git rev-parse --verify --short=6 HEAD 2>/dev/null)"
ifeq ($(repo_ver),git-)
repo_ver="sip-router unknown"
repo_ver="kamailio unknown"
endif

$(docbook_output_dir)/cfg_var_list.xml: Makefile \
Expand All @@ -287,14 +297,21 @@ $(docbook_output_dir)/cfg_var_list.xml: Makefile \
@echo '<book id="cfg_var_list"'\
'xmlns:xi="http://www.w3.org/2001/XInclude">' >>$@
@echo ' <title>Runtime Configuration Variables List</title>' >>$@
@echo ' <bookinfo><revhistory><revision>' >>$@
@echo ' <revnumber>'$(repo_ver)'</revnumber>' >>$@
@echo ' <date>'`date -R`'</date>' >>$@
@echo ' <revremark>' >>$@
@echo " Automatically generated by:">>$@
@echo " $(MAKE) -C doc/cfg_list $(MAKECMDGOALS)" >>$@
@echo ' </revremark>' >>$@
@echo ' </revision></revhistory></bookinfo>' >>$@
@echo ' <bookinfo>' >>$@
@echo ' <productname class="trade">kamailio.org</productname>' >>$@
@echo ' <authorgroup>' >>$@
@echo ' <author>' >>$@
@echo ' <firstname>Kamailio</firstname>' >>$@
@echo ' <surname>Development Team</surname>' >>$@
@echo ' <affiliation><orgname>https://www.kamailio.org</orgname></affiliation>' >>$@
@echo ' <address>sr-dev@lists.kamailio.org</address>' >>$@
@echo ' </author>' >>$@
@echo ' </authorgroup>' >>$@
@echo ' <copyright>' >>$@
@echo ' <year>2008-2017</year>' >>$@
@echo ' <holder>Kamailio Project</holder>' >>$@
@echo ' </copyright>' >>$@
@echo ' </bookinfo>' >>$@
@$(foreach f,$(flist),\
echo ' <xi:include'\
'href="'$(call get_target,$f).xml'"/>' \
Expand Down

0 comments on commit 5d9ee9f

Please sign in to comment.