is there a way to tell that i want to compile only a given list of modules? i don't like to list excluded modules, because if i use that, i need to keep on adding stuff to the list all the time.
-- juha
On Apr 20, 2009 at 14:27, Juha Heinanen jh@tutpro.com wrote:
is there a way to tell that i want to compile only a given list of modules? i don't like to list excluded modules, because if i use that, i need to keep on adding stuff to the list all the time.
make modules-cfg modules="modules/x modules/y" or make modules-cfg skip_modules="foo bar"
or just edit directly modules.lst.
If you want only kamailio modules you could try: make modules-cfg modules_dirs="modules modules_k" (but I haven't tested it yet)
Andrei
Andrei Pelinescu-Onciul writes:
or just edit directly modules.lst.
this is what i have tried, but cannot figure out, how include_modules work. it does not seem to have any effect:
modules_dirs:=modules modules_s modules_k cfg_group_include= include_modules= enum dialplan static_modules= skip_modules= exclude_modules=
jh@taimen:/usr/src/orig/sip-router$ make modules config.mak loaded Makefile.defs defs skipped Makefile:350: "make TLS option is obsoleted, try TLS_HOOKS or CORE_TLS" config.mak included make[1]: Entering directory `/usr/src/orig/sip-router/modules/auth_radius' ...
-- juha
On Apr 20, 2009 at 16:49, Juha Heinanen jh@tutpro.com wrote:
Andrei Pelinescu-Onciul writes:
or just edit directly modules.lst.
this is what i have tried, but cannot figure out, how include_modules work. it does not seem to have any effect:
include_modules just adds some extra module to the compilation
modules_dirs:=modules modules_s modules_k cfg_group_include= include_modules= enum dialplan static_modules= skip_modules= exclude_modules=
That would make all the default modules + enum and dialplan.
make modules-cfg include_modules="enum dialplan" # equiv. to your edit # above make print-modules
... The following modules will be made ... modules_k/: enum dialplan acc alias_db auth auth_db auth_diameter benchmark cfgutils db_text dialplan dispatcher diversion domain domainpolicy enum exec group h350 htable imc kex lcr maxfwd mediaproxy mi_datagram mi_fifo misc_radius msilo nathelper path pdt peering perl permissions pike presence presence_dialoginfo presence_mwi presence_xml pua pua_bla pua_dialoginfo pua_mi pua_usrloc pua_xmpp pv qos ratelimit regex registrar rr rtimer sanity siputils sl sms speeddial sqlops sst statistics textops uac uri_db userblacklist usrloc utils xcap_client xlog
(make print-modules is very usefull to see what will be done)
If what you want is to compile only enum and dialplan: make modules-cfg modules="modules/enum modules/dialplan" modules_s="" modules_k=""
make print-modules config.mak loaded Makefile.defs defs skipped The following modules were chosen to be included: ---------------------------------------------------------- The following modules will be excluded: cpl mangler postgres jabber mysql cpl-c auth_radius uri_radius avp_radius acc_radius dialog pa rls presence_b2b xcap xmlrpc osp tls oracle unixsock dbg print_lib auth_identity ldap db_berkeley db_mysql db_postgres db_oracle db_unixodbc memcached mi_xmlrpc nat_traversal perlvdb purple seas siptrace snmpstats uac_redirect xmpp carrierroute avpops bdb dbtext iptrtpproxy pa rls CVS avpops bdb dbtext iptrtpproxy pa rls CVS ---------------------------------------------------------- The following modules will be made modules/: enum dialplan modules_s/: modules_k/:
jh@taimen:/usr/src/orig/sip-router$ make modules config.mak loaded Makefile.defs defs skipped Makefile:350: "make TLS option is obsoleted, try TLS_HOOKS or CORE_TLS" config.mak included make[1]: Entering directory `/usr/src/orig/sip-router/modules/auth_radius' ...
Note also that: make modules - makes common modules (in modules/) make modules_s - makes ser modules (modules_s/) make modules_k - makes k modules (modules_k/) make every-module - makes all of them (modules, modules_s & modules_k).
Andrei
Andrei Pelinescu-Onciul writes:
If what you want is to compile only enum and dialplan: make modules-cfg modules="modules/enum modules/dialplan" modules_s="" modules_k=""
andrei,
it would be nice if i could achieve the same just be editing modules.lst somehow, i.e., list there which modules and s and k modules i want to make. for example, there could be lines
modules= modules_k= modules_s=
and if any of them is non-empty, then those listed will get compiled.
excluded_modules makes nowadays little sense, since an average user uses less than half of the modules.
-- juha
On Apr 20, 2009 at 17:17, Juha Heinanen jh@tutpro.com wrote:
Andrei Pelinescu-Onciul writes:
If what you want is to compile only enum and dialplan: make modules-cfg modules="modules/enum modules/dialplan" modules_s="" modules_k=""
andrei,
it would be nice if i could achieve the same just be editing modules.lst somehow, i.e., list there which modules and s and k modules i want to make. for example, there could be lines
modules= modules_k= modules_s=
But you could do just that, edit it, delete module, modules_k and module_s and replace them like above.
and if any of them is non-empty, then those listed will get compiled.
excluded_modules makes nowadays little sense, since an average user uses less than half of the modules.
exclude_modules is for modules that depend on external stuff (which is less probable to have installed), modules that do not compile a.s.o.
We have also another mechanism: modules groups, e.g.: make print-modules group_include=mysql ... modules/: acc_db auth_db avp_db db_ops uri_db domain lcr msilo mysql speeddial ...
make modules-cfg group_include="mysql standard" => all normal modules + mysql.
Right now the groups are not updated for sr, but we can easily do it (and create more of them if needed). So far the following groups are defined: standard, standard_dep (modules that depend on external stuff, but which are likely to be needed), mysql, radius, presence, stable, experimental.
Andrei