mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-11-03 20:38:59 +00:00 
			
		
		
		
	grep -m not available on bsd, use head -1 which works for all git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47445 65c4cc65-6c06-0410-ace0-fbb531ad65f3
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/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}
 | 
						|
 | 
						|
	echo -e "\t<category name=\"MENUSELECT_${catsuffix}\" displayname=\"${displayname}\" remove_on_change=\"${dir}/modules.link\">"
 | 
						|
	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}
 | 
						|
		echo -e "\t\t<member name=\"${fname}\" displayname=\"${desc}\" remove_on_change=\"${dir}/${fname}.o ${dir}/${fname}.oo ${dir}/${fname}.so\">"
 | 
						|
		awk -f build_tools/get_moduleinfo ${file}
 | 
						|
		echo -e "\t\t</member>"
 | 
						|
		awk -f build_tools/get_makeopts ${file} >> .makeoptstmp
 | 
						|
	done
 | 
						|
	echo -e "\t</category>"
 | 
						|
}
 | 
						|
 | 
						|
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>"
 |