rizzo brought up some issues related to the way that the metadata required
for menuselect and the rest of the build system is extracted from the source
files. Since I had a few hours to kill on an airplane today, I decided to
improve this situation... so now the system caches the extracted metadata
and uses it to build the menuselect 'tree' as much as it can. The result
of this is that when a single source file is changed, only the metadata for
that file needs to be extracted again, and the rest is used from the cache
files. I also reduced the number of forked processes required to do the
metadata extraction; it was actually possible to do most of what we needed
in the Makefiles themselves without using any shell scripts at all! On my
laptop, these changes resulted in an 80% decrease in the time required
for the 'menuselect.makeopts' automatic check to occur after editing a single
source file.

While doing this work I also cleaned up a few minor things in the Makefiles,
adding a check for 'awk' to the configure script and changed all remaining
places we use 'grep' or 'awk' to use the ones found by the configure script,
and changed the 'prep_tarball' script to build the menuselect metadata so
that tarballs of Asterisk will include it and won't require the user to
wait while it is extracted after unpacking.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@93180 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kevin P. Fleming
2007-12-17 06:44:51 +00:00
parent 4965b39719
commit 627f595c58
17 changed files with 2461 additions and 6160 deletions

View File

@@ -58,6 +58,7 @@ export PROC
export SOLINK export SOLINK
export STRIP export STRIP
export DOWNLOAD export DOWNLOAD
export AWK
export GREP export GREP
export ID export ID
export OSARCH export OSARCH
@@ -238,10 +239,10 @@ ifeq ($(OSARCH),SunOS)
ASTCFLAGS+=-Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -I/usr/local/ssl/include ASTCFLAGS+=-Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -I/usr/local/ssl/include
endif endif
ASTERISKVERSION:=$(shell build_tools/make_version .) ASTERISKVERSION:=$(shell GREP=$(GREP) AWK=$(AWK) build_tools/make_version .)
ifneq ($(wildcard .version),) ifneq ($(wildcard .version),)
ASTERISKVERSIONNUM:=$(shell awk -F. '{printf "%01d%02d%02d", $$1, $$2, $$3}' .version) ASTERISKVERSIONNUM:=$(shell $(AWK) -F. '{printf "%01d%02d%02d", $$1, $$2, $$3}' .version)
RPMVERSION:=$(shell sed 's/[-\/:]/_/g' .version) RPMVERSION:=$(shell sed 's/[-\/:]/_/g' .version)
else else
RPMVERSION=unknown RPMVERSION=unknown
@@ -263,6 +264,7 @@ SUBDIRS_UNINSTALL:=$(SUBDIRS:%=%-uninstall)
MOD_SUBDIRS_EMBED_LDSCRIPT:=$(MOD_SUBDIRS:%=%-embed-ldscript) MOD_SUBDIRS_EMBED_LDSCRIPT:=$(MOD_SUBDIRS:%=%-embed-ldscript)
MOD_SUBDIRS_EMBED_LDFLAGS:=$(MOD_SUBDIRS:%=%-embed-ldflags) MOD_SUBDIRS_EMBED_LDFLAGS:=$(MOD_SUBDIRS:%=%-embed-ldflags)
MOD_SUBDIRS_EMBED_LIBS:=$(MOD_SUBDIRS:%=%-embed-libs) MOD_SUBDIRS_EMBED_LIBS:=$(MOD_SUBDIRS:%=%-embed-libs)
MOD_SUBDIRS_MENUSELECT_TREE:=$(MOD_SUBDIRS:%=%-menuselect-tree)
ifneq ($(findstring darwin,$(OSARCH)),) ifneq ($(findstring darwin,$(OSARCH)),)
ASTCFLAGS+=-D__Darwin__ ASTCFLAGS+=-D__Darwin__
@@ -280,6 +282,8 @@ ifeq ($(OSARCH),SunOS)
SOLINK=-shared -fpic -L/usr/local/ssl/lib SOLINK=-shared -fpic -L/usr/local/ssl/lib
endif endif
SUBMAKE=$(MAKE) --quiet --no-print-directory
# This is used when generating the doxygen documentation # This is used when generating the doxygen documentation
ifneq ($(DOT),:) ifneq ($(DOT),:)
HAVEDOT=yes HAVEDOT=yes
@@ -312,13 +316,17 @@ menuselect.makeopts: menuselect/menuselect menuselect-tree
menuselect/menuselect --check-deps $(GLOBAL_MAKEOPTS) $(USER_MAKEOPTS) menuselect.makeopts menuselect/menuselect --check-deps $(GLOBAL_MAKEOPTS) $(USER_MAKEOPTS) menuselect.makeopts
$(MOD_SUBDIRS_EMBED_LDSCRIPT): $(MOD_SUBDIRS_EMBED_LDSCRIPT):
@echo "EMBED_LDSCRIPTS+="`$(MAKE) --quiet --no-print-directory -C $(@:-embed-ldscript=) SUBDIR=$(@:-embed-ldscript=) __embed_ldscript` >> makeopts.embed_rules @echo "EMBED_LDSCRIPTS+="`$(SUBMAKE) -C $(@:-embed-ldscript=) SUBDIR=$(@:-embed-ldscript=) __embed_ldscript` >> makeopts.embed_rules
$(MOD_SUBDIRS_EMBED_LDFLAGS): $(MOD_SUBDIRS_EMBED_LDFLAGS):
@echo "EMBED_LDFLAGS+="`$(MAKE) --quiet --no-print-directory -C $(@:-embed-ldflags=) SUBDIR=$(@:-embed-ldflags=) __embed_ldflags` >> makeopts.embed_rules @echo "EMBED_LDFLAGS+="`$(SUBMAKE) -C $(@:-embed-ldflags=) SUBDIR=$(@:-embed-ldflags=) __embed_ldflags` >> makeopts.embed_rules
$(MOD_SUBDIRS_EMBED_LIBS): $(MOD_SUBDIRS_EMBED_LIBS):
@echo "EMBED_LIBS+="`$(MAKE) --quiet --no-print-directory -C $(@:-embed-libs=) SUBDIR=$(@:-embed-libs=) __embed_libs` >> makeopts.embed_rules @echo "EMBED_LIBS+="`$(SUBMAKE) -C $(@:-embed-libs=) SUBDIR=$(@:-embed-libs=) __embed_libs` >> makeopts.embed_rules
$(MOD_SUBDIRS_MENUSELECT_TREE):
@$(SUBMAKE) -C $(@:-menuselect-tree=) SUBDIR=$(@:-menuselect-tree=) moduleinfo
@$(SUBMAKE) -C $(@:-menuselect-tree=) SUBDIR=$(@:-menuselect-tree=) makeopts
makeopts.embed_rules: menuselect.makeopts makeopts.embed_rules: menuselect.makeopts
@echo "Generating embedded module rules ..." @echo "Generating embedded module rules ..."
@@ -741,6 +749,14 @@ menuselect/gmenuselect: makeopts menuselect/menuselect.c menuselect/menuselect_g
menuselect-tree: $(foreach dir,$(filter-out main,$(MOD_SUBDIRS)),$(wildcard $(dir)/*.c) $(wildcard $(dir)/*.cc)) build_tools/cflags.xml sounds/sounds.xml build_tools/embed_modules.xml configure menuselect-tree: $(foreach dir,$(filter-out main,$(MOD_SUBDIRS)),$(wildcard $(dir)/*.c) $(wildcard $(dir)/*.cc)) build_tools/cflags.xml sounds/sounds.xml build_tools/embed_modules.xml configure
@echo "Generating input for menuselect ..." @echo "Generating input for menuselect ..."
@build_tools/prep_moduledeps > $@ @echo "<?xml version=\"1.0\"?>" > $@
@echo >> $@
@echo "<menu name=\"Asterisk Module and Build Option Selection\">" >> $@
@for dir in $(sort $(filter-out main,$(MOD_SUBDIRS))); do $(SUBMAKE) -C $${dir} SUBDIR=$${dir} moduleinfo >> $@; done
@for dir in $(sort $(filter-out main,$(MOD_SUBDIRS))); do $(SUBMAKE) -C $${dir} SUBDIR=$${dir} makeopts >> $@; done
@cat build_tools/cflags.xml >> $@
@cat build_tools/embed_modules.xml >> $@
@cat sounds/sounds.xml >> $@
@echo "</menu>" >> $@
.PHONY: menuselect main sounds clean dist-clean distclean all prereqs cleantest uninstall _uninstall uninstall-all dont-optimize $(SUBDIRS_INSTALL) $(SUBDIRS_DIST_CLEAN) $(SUBDIRS_CLEAN) $(SUBDIRS_UNINSTALL) $(SUBDIRS) $(MOD_SUBDIRS_EMBED_LDSCRIPT) $(MOD_SUBDIRS_EMBED_LDFLAGS) $(MOD_SUBDIRS_EMBED_LIBS) menuselect.makeopts .PHONY: menuselect main sounds clean dist-clean distclean all prereqs cleantest uninstall _uninstall uninstall-all dont-optimize $(SUBDIRS_INSTALL) $(SUBDIRS_DIST_CLEAN) $(SUBDIRS_CLEAN) $(SUBDIRS_UNINSTALL) $(SUBDIRS) $(MOD_SUBDIRS_EMBED_LDSCRIPT) $(MOD_SUBDIRS_EMBED_LDFLAGS) $(MOD_SUBDIRS_EMBED_LIBS) menuselect.makeopts

View File

@@ -42,7 +42,7 @@ $(addsuffix .so,$(filter $(LOADABLE_MODS),$(CC_MODS))): %.so: %.oo
modules.link: $(addsuffix .o,$(filter $(EMBEDDED_MODS),$(C_MODS))) modules.link: $(addsuffix .o,$(filter $(EMBEDDED_MODS),$(C_MODS)))
modules.link: $(addsuffix .oo,$(filter $(EMBEDDED_MODS),$(CC_MODS))) modules.link: $(addsuffix .oo,$(filter $(EMBEDDED_MODS),$(CC_MODS)))
.PHONY: clean uninstall _all .PHONY: clean uninstall _all moduleinfo makeopts
ifneq ($(LOADABLE_MODS),) ifneq ($(LOADABLE_MODS),)
_all: $(LOADABLE_MODS:%=%.so) _all: $(LOADABLE_MODS:%=%.so)
@@ -79,6 +79,40 @@ install:: all
uninstall:: uninstall::
dist-clean::
rm -f .*.moduleinfo .moduleinfo
rm -f .*.makeopts .makeopts
.%.moduleinfo: %.c
@echo "<member name=\"$*\" displayname=\"$(shell $(GREP) -e AST_MODULE_INFO $< | head -n 1 | cut -d '"' -f 2)\" remove_on_change=\"$(SUBDIR)/$*.o $(SUBDIR)/$*.so\">" > $@
$(AWK) -f $(ASTTOPDIR)/build_tools/get_moduleinfo $< >> $@
echo "</member>" >> $@
.%.moduleinfo: %.cc
@echo "<member name=\"$*\" displayname=\"$(shell $(GREP) -e AST_MODULE_INFO $< | head -n 1 | cut -d '"' -f 2)\" remove_on_change=\"$(SUBDIR)/$*.oo $(SUBDIR)/$*.so\">" > $@
$(AWK) -f $(ASTTOPDIR)/build_tools/get_moduleinfo $< >> $@
echo "</member>" >> $@
.moduleinfo:: $(addsuffix .moduleinfo,$(addprefix .,$(ALL_C_MODS) $(ALL_CC_MODS)))
@echo "<category name=\"MENUSELECT_$(MENUSELECT_CATEGORY)\" displayname=\"$(MENUSELECT_DESCRIPTION)\" remove_on_change=\"$(SUBDIR)/modules.link\">" > $@
@cat $^ >> $@
@echo "</category>" >> $@
moduleinfo: .moduleinfo
@cat $<
.%.makeopts: %.c
@$(AWK) -f $(ASTTOPDIR)/build_tools/get_makeopts $< > $@
.%.makeopts: %.cc
@$(AWK) -f $(ASTTOPDIR)/build_tools/get_makeopts $< > $@
.makeopts:: $(addsuffix .makeopts,$(addprefix .,$(ALL_C_MODS) $(ALL_CC_MODS)))
@cat $^ > $@
makeopts: .makeopts
@cat $<
ifneq ($(wildcard .*.d),) ifneq ($(wildcard .*.d),)
include .*.d include .*.d
endif endif

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(patsubst %.c,%,$(wildcard app_*.c))) MENUSELECT_CATEGORY=APPS
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(patsubst %.cc,%,$(wildcard app_*.cc))) MENUSELECT_DESCRIPTION=Applications
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard app_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard app_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)

View File

@@ -3,7 +3,7 @@
if [ -f ${1}/.version ]; then if [ -f ${1}/.version ]; then
cat ${1}/.version cat ${1}/.version
elif [ -d .svn ]; then elif [ -d .svn ]; then
PARTS=`LANG=C svn info ${1} | grep URL | awk '{print $2;}' | sed -e 's:^.*/svn/asterisk/::' | sed -e 's:/: :g'` PARTS=`LANG=C svn info ${1} | ${GREP} URL | ${AWK} '{print $2;}' | sed -e 's:^.*/svn/asterisk/::' | sed -e 's:/: :g'`
BRANCH=0 BRANCH=0
TEAM=0 TEAM=0
TAG=0 TAG=0

View File

@@ -1,48 +0,0 @@
#!/bin/sh
get_description() {
TDESC=`${GREP} -e AST_MODULE_INFO ${1} | head -n 1 | cut -d '"' -f 2`
}
process_dir() {
dir=${1}
prefix=${2}_
catsuffix=${3}
displayname=${4}
printf "\t<category name=\"MENUSELECT_${catsuffix}\" displayname=\"${displayname}\" remove_on_change=\"${dir}/modules.link\">\n"
for file in `ls ${dir}/${prefix}*.c ${dir}/${prefix}*.cc 2> /dev/null | sort`
do
if [ ! -f ${file} ]; then
continue
fi
fname=`basename ${file} .c`
fname=`basename ${fname} .cc`
get_description ${file}
desc=${TDESC}
printf "\t\t<member name=\"${fname}\" displayname=\"${desc}\" remove_on_change=\"${dir}/${fname}.o ${dir}/${fname}.oo ${dir}/${fname}.so\">\n"
awk -f build_tools/get_moduleinfo ${file}
printf "\t\t</member>\n"
awk -f build_tools/get_makeopts ${file} >> .makeoptstmp
done
printf "\t</category>\n"
}
echo "<?xml version=\"1.0\"?>"
echo
echo "<menu name=\"Asterisk Module Selection\">"
rm -f .makeoptstmp
process_dir apps app APPS Applications
process_dir cdr cdr CDR "Call Detail Recording"
process_dir channels chan CHANNELS "Channel Drivers"
process_dir codecs codec CODECS "Codec Translators"
process_dir formats format FORMATS "Format Interpreters"
process_dir funcs func FUNCS "Dialplan Functions"
process_dir pbx pbx PBX "PBX Modules"
process_dir res res RES "Resource Modules"
cat .makeoptstmp
cat build_tools/cflags.xml
cat build_tools/embed_modules.xml
cat sounds/sounds.xml
rm -f .makeoptstmp
echo "</menu>"

View File

@@ -5,4 +5,5 @@
# #
# It will be executed from the top-level directory of the project. # It will be executed from the top-level directory of the project.
make -C sounds all MENUSELECT_CORE_SOUNDS=CORE-SOUNDS-EN-GSM MENUSELECT_MOH=MOH-FREEPLAY-WAV WGET=wget DOWNLOAD=wget make -C sounds MENUSELECT_CORE_SOUNDS=CORE-SOUNDS-EN-GSM MENUSELECT_MOH=MOH-FREEPLAY-WAV WGET=wget DOWNLOAD=wget all
make AWK=awk GREP=grep menuselect-tree

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_CDR),$(patsubst %.c,%,$(wildcard cdr_*.c))) MENUSELECT_CATEGORY=CDR
CC_MODS:=$(filter-out $(MENUSELECT_CDR),$(patsubst %.cc,%,$(wildcard cdr_*.cc))) MENUSELECT_DESCRIPTION=Call Detail Recording
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard cdr_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard cdr_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_CHANNELS),$(patsubst %.c,%,$(wildcard chan_*.c))) MENUSELECT_CATEGORY=CHANNELS
CC_MODS:=$(filter-out $(MENUSELECT_CHANNELS),$(patsubst %.cc,%,$(wildcard chan_*.cc))) MENUSELECT_DESCRIPTION=Channel Drivers
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard chan_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard chan_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
ifeq ($(OSARCH),OpenBSD) ifeq ($(OSARCH),OpenBSD)
PTLIB=-lpt_OpenBSD_x86_r PTLIB=-lpt_OpenBSD_x86_r

View File

@@ -13,8 +13,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.c,%,$(wildcard codec_*.c))) MENUSELECT_CATEGORY=CODECS
CC_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.cc,%,$(wildcard codec_*.cc))) MENUSELECT_DESCRIPTION=Codec Translators
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard codec_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard codec_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)

8413
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -2,11 +2,7 @@
AC_PREREQ(2.60) AC_PREREQ(2.60)
m4_define([PBX_VERSION], AC_INIT(asterisk, 1.4, www.asterisk.org)
m4_bpatsubst(m4_esyscmd([build_tools/make_version .]),
[\([0-9.]*\)\(\w\|\W\)*],
[\1]))
AC_INIT(asterisk, PBX_VERSION, www.asterisk.org)
# cross-compile macros # cross-compile macros
AC_CANONICAL_BUILD AC_CANONICAL_BUILD
@@ -136,6 +132,7 @@ if test "x$with_gnu_ld" = "xyes" ; then
fi fi
AC_SUBST(GNU_LD) AC_SUBST(GNU_LD)
AC_PATH_PROG([AWK], [awk], :)
AC_PATH_PROG([GREP], [grep], :) AC_PATH_PROG([GREP], [grep], :)
AC_PATH_PROG([FIND], [find], :) AC_PATH_PROG([FIND], [find], :)
AC_PATH_PROG([COMPRESS], [compress], :) AC_PATH_PROG([COMPRESS], [compress], :)

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_FORMATS),$(patsubst %.c,%,$(wildcard format_*.c))) MENUSELECT_CATEGORY=FORMATS
CC_MODS:=$(filter-out $(MENUSELECT_FORMATS),$(patsubst %.cc,%,$(wildcard format_*.cc))) MENUSELECT_DESCRIPTION=Format Interpreters
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard format_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard format_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_FUNCS),$(patsubst %.c,%,$(wildcard func_*.c))) MENUSELECT_CATEGORY=FUNCS
CC_MODS:=$(filter-out $(MENUSELECT_FUNCS),$(patsubst %.cc,%,$(wildcard func_*.cc))) MENUSELECT_DESCRIPTION=Dialplan Functions
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard func_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard func_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)

View File

@@ -626,6 +626,9 @@
#ifndef _POSIX_PTHREAD_SEMANTICS #ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS
#endif #endif
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Define like PROTOTYPES; this can be used by system headers. */ /* Define like PROTOTYPES; this can be used by system headers. */
#undef __PROTOTYPES #undef __PROTOTYPES

View File

@@ -7,6 +7,7 @@ HOST_CC=cc
CXX=@CXX@ CXX=@CXX@
INSTALL=@INSTALL@ INSTALL=@INSTALL@
AWK=@AWK@
GREP=@GREP@ GREP=@GREP@
AR=@AR@ AR=@AR@
RANLIB=@RANLIB@ RANLIB=@RANLIB@

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.c,%,$(wildcard pbx_*.c))) MENUSELECT_CATEGORY=PBX
CC_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.cc,%,$(wildcard pbx_*.cc))) MENUSELECT_DESCRIPTION=PBX Modules
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard pbx_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard pbx_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)

View File

@@ -11,8 +11,14 @@
-include ../menuselect.makeopts ../menuselect.makedeps -include ../menuselect.makeopts ../menuselect.makedeps
C_MODS:=$(filter-out $(MENUSELECT_RES),$(patsubst %.c,%,$(wildcard res_*.c))) MENUSELECT_CATEGORY=RES
CC_MODS:=$(filter-out $(MENUSELECT_RES),$(patsubst %.cc,%,$(wildcard res_*.cc))) MENUSELECT_DESCRIPTION=Resource Modules
ALL_C_MODS:=$(patsubst %.c,%,$(wildcard res_*.c))
ALL_CC_MODS:=$(patsubst %.cc,%,$(wildcard res_*.cc))
C_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_C_MODS))
CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(ALL_CC_MODS))
LOADABLE_MODS:=$(C_MODS) $(CC_MODS) LOADABLE_MODS:=$(C_MODS) $(CC_MODS)