You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							85 lines
						
					
					
						
							1.5 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							85 lines
						
					
					
						
							1.5 KiB
						
					
					
				
								#!/bin/bash
							 | 
						|
								
							 | 
						|
								_fill_tc_array(){
							 | 
						|
									unset AVAI_TCLIST
							 | 
						|
									unset INST_TCLIST
							 | 
						|
									tcempty=0
							 | 
						|
								
							 | 
						|
									cd "$tccfgdir"
							 | 
						|
									if [ "$(ls -A "$tccfgdir")" ]
							 | 
						|
									then
							 | 
						|
										AVAI_TCLIST=(*)
							 | 
						|
									else
							 | 
						|
										printf "\n error in _fill_tc_array()\n please report error\n\n"
							 | 
						|
										exit
							 | 
						|
									fi
							 | 
						|
								
							 | 
						|
									cd "$tcdir"
							 | 
						|
									if [ "$(ls -A "$tcdir")" ]
							 | 
						|
									then
							 | 
						|
										tmp_tclist=(*)
							 | 
						|
										for t in "${tmp_tclist[@]}"
							 | 
						|
										do
							 | 
						|
											for a in "${AVAI_TCLIST[@]}"
							 | 
						|
											do
							 | 
						|
												[ "$t" == "$a" ] && INST_TCLIST+=($t)
							 | 
						|
											done
							 | 
						|
										done
							 | 
						|
									else
							 | 
						|
										tcempty=1
							 | 
						|
									fi
							 | 
						|
								
							 | 
						|
									if [ "$tcempty" == "1" ]
							 | 
						|
									then
							 | 
						|
										MISS_TCLIST=$(echo ${AVAI_TCLIST[@]} |sort)
							 | 
						|
									else
							 | 
						|
										MISS_TCLIST=(
							 | 
						|
										$(for el in $(diff_array AVAI_TCLIST[@] INST_TCLIST[@])
							 | 
						|
										do
							 | 
						|
											printf "$el\n"
							 | 
						|
										done |sort)
							 | 
						|
										)
							 | 
						|
									fi
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								_create_module_arrays(){
							 | 
						|
									i=0
							 | 
						|
									for e in $(echo "$addons" | sed 's/WEBIF_//g;s/WITH_//g;s/MODULE_//g;s/CS_//g;s/HAVE_//g;s/_CHARSETS//g;s/CW_CYCLE_CHECK/CWCC/g;s/SUPPORT//g';)
							 | 
						|
									do
							 | 
						|
										SHORT_ADDONS+=($e)
							 | 
						|
										SHORT_MODULENAMES+=($e)
							 | 
						|
									done
							 | 
						|
								
							 | 
						|
									for e in ${protocols//MODULE_/}
							 | 
						|
									do
							 | 
						|
										SHORT_PROTOCOLS+=($e)
							 | 
						|
										SHORT_MODULENAMES+=($e)
							 | 
						|
									done
							 | 
						|
								
							 | 
						|
									for e in ${readers//READER_/}
							 | 
						|
									do
							 | 
						|
										SHORT_READERS+=($e)
							 | 
						|
										SHORT_MODULENAMES+=($e)
							 | 
						|
									done
							 | 
						|
								
							 | 
						|
									for e in ${card_readers//CARDREADER_/}
							 | 
						|
									do
							 | 
						|
										SHORT_CARD_READERS+=($e)
							 | 
						|
										SHORT_MODULENAMES+=($e)
							 | 
						|
									done
							 | 
						|
								
							 | 
						|
									for e in $addons $protocols $readers $card_readers
							 | 
						|
									do
							 | 
						|
										ALL_MODULES_LONG+=($e)
							 | 
						|
									done
							 | 
						|
								
							 | 
						|
									for e in "${SHORT_MODULENAMES[@]}"
							 | 
						|
									do
							 | 
						|
										INTERNAL_MODULES["$e"]="${ALL_MODULES_LONG[i]}"
							 | 
						|
										((i++))
							 | 
						|
									done
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								diff_array(){
							 | 
						|
									awk 'BEGIN{RS=ORS=" "}{NR==FNR?a[$0]++:a[$0]--}END{for(k in a)if(a[k])print k}' <(echo -n "${!1}") <(echo -n "${!2}")
							 | 
						|
								}
							 | 
						|
								
							 |