37 lines
		
	
	
		
			613 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			613 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
#!/bin/bash -e
 | 
						|
#
 | 
						|
# Generate init_extensions* functions to call all the _init functions from
 | 
						|
# filter_init
 | 
						|
#
 | 
						|
# Usage: gen_init <suffix> filename...
 | 
						|
#
 | 
						|
# Example output:
 | 
						|
#
 | 
						|
#   void libxt_tcp_init(void);
 | 
						|
#   void libxt_udp_init(void);
 | 
						|
#   void init_extensions(void);
 | 
						|
#   void init_extensions(void) {
 | 
						|
#     libxt_tcp_init();
 | 
						|
#     libxt_udp_init();
 | 
						|
#   }
 | 
						|
 | 
						|
EXT=$1
 | 
						|
shift
 | 
						|
 | 
						|
for i in "$@"; do
 | 
						|
  f=${i##*/}
 | 
						|
  f=${f%%.*}
 | 
						|
  echo "void ${f}_init(void);"
 | 
						|
done
 | 
						|
 | 
						|
echo "void init_extensions${EXT}(void);"
 | 
						|
echo "void init_extensions${EXT}(void) {"
 | 
						|
 | 
						|
for i in "$@"; do
 | 
						|
  f=${i##*/}
 | 
						|
  f=${f%%.*}
 | 
						|
  echo "  ${f}_init();"
 | 
						|
done
 | 
						|
 | 
						|
echo "}"
 |