mirror of
				https://github.com/vyos/vyos-build.git
				synced 2025-10-01 20:28:40 +02:00 
			
		
		
		
	task #T555 add tools/submod-mk to vyos-build repository
https://phabricator.vyos.net/T555
This commit is contained in:
		
							parent
							
								
									bc0406ce33
								
							
						
					
					
						commit
						9d5ab697ad
					
				
							
								
								
									
										84
									
								
								tools/submod-mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								tools/submod-mk
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,84 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#
 | 
			
		||||
# **** License ****
 | 
			
		||||
#
 | 
			
		||||
# Copyright (C) 2013 Vyatta, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This program is free software; you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License version 2 as
 | 
			
		||||
# published by the Free Software Foundation.
 | 
			
		||||
#
 | 
			
		||||
# This program is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
#
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
#
 | 
			
		||||
# **** End License ****
 | 
			
		||||
 | 
			
		||||
progname=${0##*/}
 | 
			
		||||
shopt -s nullglob
 | 
			
		||||
shopt -s extglob
 | 
			
		||||
cd packages
 | 
			
		||||
 | 
			
		||||
info=echo
 | 
			
		||||
trace=
 | 
			
		||||
noclean="-nc"
 | 
			
		||||
build="debuild -i -b -uc -us"
 | 
			
		||||
 | 
			
		||||
declare -a submodule
 | 
			
		||||
declare -a debs
 | 
			
		||||
for debian in !(installer|linux-kernel-di-i386-2.6)/debian ; do
 | 
			
		||||
    smod=${debian%/*}
 | 
			
		||||
    debs=( ${smod}_*.deb )
 | 
			
		||||
    if [ ${#debs[@]} -eq 0 ] ; then
 | 
			
		||||
	submodule+=( $smod )
 | 
			
		||||
    fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
while [ $# -gt 0 ] ; do
 | 
			
		||||
    case "$1" in
 | 
			
		||||
	-h | --help )
 | 
			
		||||
	    cat <<-EOF
 | 
			
		||||
Usage: $progname [Options] [ SUBMODULE... ]
 | 
			
		||||
Options:
 | 
			
		||||
  -n | --do-nothing	Don´t actually remove or build anything,
 | 
			
		||||
  			just show what would be done
 | 
			
		||||
  -q | --quiet		Quiet, don't print progress info
 | 
			
		||||
  -c | --clean		Clean build
 | 
			
		||||
  -b | --binary		Skip source package build (default)
 | 
			
		||||
  -s | --source		Build binary and source packages
 | 
			
		||||
  -S | --signed-source	Build and sign packages
 | 
			
		||||
 | 
			
		||||
If no SUBMODULE(s) given, build all checked-out submodules w/o debs.
 | 
			
		||||
EOF
 | 
			
		||||
	    exit 0;;
 | 
			
		||||
	-n | --do-nothing )
 | 
			
		||||
	    trace=echo
 | 
			
		||||
	    shift;;	    
 | 
			
		||||
	-q | --quiet )
 | 
			
		||||
	    info='#'
 | 
			
		||||
	    shift;;
 | 
			
		||||
	-c | --clean )
 | 
			
		||||
	    noclean=
 | 
			
		||||
	    shift;;
 | 
			
		||||
	-b | --binary )
 | 
			
		||||
	    shift ;;		# default
 | 
			
		||||
	-s | --source )
 | 
			
		||||
	    build="git buildpackage -uc -us"
 | 
			
		||||
	    shift;;
 | 
			
		||||
	-S | --signed-source )
 | 
			
		||||
	    build="git buildpackage"
 | 
			
		||||
	    shift;;
 | 
			
		||||
	* )
 | 
			
		||||
	    submodule=( $@ )
 | 
			
		||||
	    break;;
 | 
			
		||||
    esac
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
for (( i=0; i<${#submodule[@]}; i++)) ; do
 | 
			
		||||
    eval $info P: ${submodule[i]}
 | 
			
		||||
    ( cd ${submodule[i]} && eval $trace $build $noclean ) || exit $?
 | 
			
		||||
done
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user