release.sh fixes, updates, improvements for git, usb, readability
This commit is contained in:
		
							parent
							
								
									fb53eb09cf
								
							
						
					
					
						commit
						cb13f32a7c
					
				
							
								
								
									
										183
									
								
								tools/release.functions
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								tools/release.functions
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,183 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					make_hdimage()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						dd if=$TMPDISKUSR of=usrimage bs=$BS count=$USRBLOCKS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						rootsize=`stat -size rootimage`
 | 
				
			||||||
 | 
						usrsize=`stat -size usrimage`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						rootsects=`expr $rootsize / 512`
 | 
				
			||||||
 | 
						usrsects=`expr $usrsize / 512`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# installboot -m needs at least 1KB 
 | 
				
			||||||
 | 
						dd < /dev/zero >tmpimage count=2
 | 
				
			||||||
 | 
						partition -fm tmpimage 2 81:$rootsects* 0:0 81:$usrsects
 | 
				
			||||||
 | 
						installboot -m tmpimage /usr/mdec/masterboot
 | 
				
			||||||
 | 
						dd < tmpimage > subpart count=1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						primsects=`expr 1 + $rootsects + $usrsects`
 | 
				
			||||||
 | 
						cyl=`expr '(' $primsects ')' / $secs + 1`
 | 
				
			||||||
 | 
						padsects=`expr $cyl \* $secs - 1 - $primsects`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						{ dd < /dev/zero count=1
 | 
				
			||||||
 | 
							cat subpart
 | 
				
			||||||
 | 
							cat rootimage
 | 
				
			||||||
 | 
							cat usrimage
 | 
				
			||||||
 | 
							dd < /dev/zero count=$padsects
 | 
				
			||||||
 | 
						} > hdimage
 | 
				
			||||||
 | 
						partition -m hdimage 81:`expr $primsects + $padsects`*
 | 
				
			||||||
 | 
						installboot -m hdimage /usr/mdec/masterboot
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					retrieve()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						dir=$1
 | 
				
			||||||
 | 
						list=`pwd`/$2
 | 
				
			||||||
 | 
						url=${PACKAGEURL}
 | 
				
			||||||
 | 
						(	
 | 
				
			||||||
 | 
							cd $dir || exit 1
 | 
				
			||||||
 | 
							echo  " * Updating $dir
 | 
				
			||||||
 | 
					   from $url
 | 
				
			||||||
 | 
					   with $list"
 | 
				
			||||||
 | 
							files=`awk <$list '{ print "'$url'/" $1 ".tgz" }'`
 | 
				
			||||||
 | 
							fetch -r $files || true
 | 
				
			||||||
 | 
						)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cd_root_changes()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						edparams $TMPDISKROOT 'unset bootopts;
 | 
				
			||||||
 | 
					unset servers;
 | 
				
			||||||
 | 
					unset rootdev;
 | 
				
			||||||
 | 
					unset leader;
 | 
				
			||||||
 | 
					unset image;
 | 
				
			||||||
 | 
					disable=inet;
 | 
				
			||||||
 | 
					bootcd=1;
 | 
				
			||||||
 | 
					cdproberoot=1;
 | 
				
			||||||
 | 
					ata_id_timeout=2;
 | 
				
			||||||
 | 
					bootbig(1, Regular MINIX 3) { unset image; boot }
 | 
				
			||||||
 | 
					leader() { echo \n--- Welcome to MINIX 3. This is the boot monitor. ---\n\nChoose an option from the menu or press ESC if you need to do anything special.\nOtherwise I will boot with my defaults in 10 seconds.\n\n }; main(){trap 10000 boot; menu; };
 | 
				
			||||||
 | 
					save' 
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					hdemu_root_changes()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						$RELEASEDIR/usr/bin/installboot -d $TMPDISKROOT \
 | 
				
			||||||
 | 
							$RELEASEDIR/usr/mdec/bootblock boot/boot
 | 
				
			||||||
 | 
						echo \
 | 
				
			||||||
 | 
					'bootcd=2
 | 
				
			||||||
 | 
					disable=inet
 | 
				
			||||||
 | 
					bios_wini=yes
 | 
				
			||||||
 | 
					bios_remap_first=1
 | 
				
			||||||
 | 
					ramimagedev=c0d7p0s0
 | 
				
			||||||
 | 
					bootbig(1, Regular MINIX 3) { image=/boot/image_big; boot }
 | 
				
			||||||
 | 
					main() { trap 10000 boot ; menu; }
 | 
				
			||||||
 | 
					save'	| $RELEASEDIR/usr/bin/edparams $TMPDISKROOT
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					usb_root_changes()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						$RELEASEDIR/usr/bin/installboot -d $TMPDISKROOT \
 | 
				
			||||||
 | 
							$RELEASEDIR/usr/mdec/bootblock boot/boot
 | 
				
			||||||
 | 
						echo \
 | 
				
			||||||
 | 
					'bios_wini=yes
 | 
				
			||||||
 | 
					bios_remap_first=1
 | 
				
			||||||
 | 
					rootdev=c0d7p0s0
 | 
				
			||||||
 | 
					bootbig(1, Regular MINIX 3) { image=/boot/image_big; boot }
 | 
				
			||||||
 | 
					leader() { echo \n--- Welcome to MINIX 3. This is the boot monitor. ---\n\nChoose an option from the menu or press ESC if you need to do anything special.\nOtherwise I will boot with my defaults in 10 seconds.\n\n }; main(){trap 10000 boot; menu; };
 | 
				
			||||||
 | 
					save'	| $RELEASEDIR/usr/bin/edparams $TMPDISKROOT
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					copy_local_packages()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if [ -d $PACKAGEDIR -a -f $PACKAGELIST -a $PACKAGES -ne 0 ]
 | 
				
			||||||
 | 
						then
 | 
				
			||||||
 | 
							index=pkg_summary
 | 
				
			||||||
 | 
							indexpath=$PACKAGEDIR/.index
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
							if [ ! -d $indexpath ]
 | 
				
			||||||
 | 
							then	mkdir $indexpath
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
							if [ ! -d $indexpath ]
 | 
				
			||||||
 | 
							then	echo "Couldn't create $indexpath."
 | 
				
			||||||
 | 
								exit 1
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
							echo "" >$PACKAGEDIR/All/$index
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						        echo " * Transfering $PACKAGEDIR to $RELEASEPACKAGE"
 | 
				
			||||||
 | 
						        for p in `cat $PACKAGELIST`
 | 
				
			||||||
 | 
						        do	if [ -f $PACKAGEDIR/All/$p.tgz ]
 | 
				
			||||||
 | 
						               then
 | 
				
			||||||
 | 
								  # Copy package and create package's index
 | 
				
			||||||
 | 
								  (
 | 
				
			||||||
 | 
								      cd $PACKAGEDIR/All
 | 
				
			||||||
 | 
								      cp $p.tgz $RELEASEPACKAGE/
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
								      f=$p.tgz
 | 
				
			||||||
 | 
								      indexname=$indexpath/$f.$index
 | 
				
			||||||
 | 
								      pkg_info -X $f >$indexname
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
								      if [ ! -f $indexname ]
 | 
				
			||||||
 | 
								      then	echo Missing $indexname.
 | 
				
			||||||
 | 
									  exit 1
 | 
				
			||||||
 | 
								      fi
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
								      if [ "`wc -l $indexname`" -lt 3 ]
 | 
				
			||||||
 | 
								      then	$indexname is too short.
 | 
				
			||||||
 | 
									  rm $indexname
 | 
				
			||||||
 | 
									  exit 1
 | 
				
			||||||
 | 
								      fi
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
								      cat $indexname >>$PACKAGEDIR/All/$index
 | 
				
			||||||
 | 
								  )
 | 
				
			||||||
 | 
						               else
 | 
				
			||||||
 | 
						                  echo "Can't copy $PACKAGEDIR/$p.tgz. Missing."
 | 
				
			||||||
 | 
						               fi
 | 
				
			||||||
 | 
						        done
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
							bzip2 -f $PACKAGEDIR/All/$index
 | 
				
			||||||
 | 
							cp $PACKAGEDIR/All/$index.bz2 $RELEASEPACKAGE/
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					fitfs()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						path="$1"
 | 
				
			||||||
 | 
						ramdisk="$2"
 | 
				
			||||||
 | 
						extra_inodes="$3"
 | 
				
			||||||
 | 
						extra_zones="$4"
 | 
				
			||||||
 | 
						mbsdefault="$5"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Determine number of inodes
 | 
				
			||||||
 | 
						inodes=`find $path | egrep -v ^$path/usr | wc -l`
 | 
				
			||||||
 | 
						inodes="`expr $inodes + $extra_inodes`"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Determine number of data zones
 | 
				
			||||||
 | 
						zonekbs=`du -Fs $path | cut -d'	' -f1`
 | 
				
			||||||
 | 
						zonekbsignore=0
 | 
				
			||||||
 | 
						[ ! -d $path/usr ] || zonekbsignore=`du -Fs $path/usr | cut -d"	" -f1`
 | 
				
			||||||
 | 
						zones="`expr \( $zonekbs - $zonekbsignore \) / \( $BS / 1024 \) + $extra_zones`"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Determine file system size
 | 
				
			||||||
 | 
						BSBITS="`expr $BS \* 8`"
 | 
				
			||||||
 | 
						imap_blocks="`expr \( $inodes + $BSBITS - 1 \) / $BSBITS`"
 | 
				
			||||||
 | 
						inode_blocks="`expr \( $inodes \* 64 + $BS - 1 \) / $BS`"
 | 
				
			||||||
 | 
						zmap_blocks="`expr \( $zones + $BSBITS - 1 \) / $BSBITS`"
 | 
				
			||||||
 | 
						blocks="`expr 1 + 1 + $imap_blocks + $zmap_blocks + $inode_blocks + $zones`"
 | 
				
			||||||
 | 
						kbs="`expr $blocks \* \( $BS / 1024 \)`"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Apply default if higher
 | 
				
			||||||
 | 
						if [ -n "$mbsdefault" ]
 | 
				
			||||||
 | 
						then
 | 
				
			||||||
 | 
							kbsdefault="`expr $mbsdefault \* 1024`"
 | 
				
			||||||
 | 
							if [ "$kbs" -lt "$kbsdefault" ]
 | 
				
			||||||
 | 
							then kbs=$kbsdefault
 | 
				
			||||||
 | 
							else echo "warning: ${mbsdefault}mb is too small, using ${kbs}kb"
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Create a filesystem on the target ramdisk
 | 
				
			||||||
 | 
						ramdisk $kbs $ramdisk
 | 
				
			||||||
 | 
						mkfs.mfs -B $BS -i $inodes $ramdisk
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										247
									
								
								tools/release.sh
									
									
									
									
									
								
							
							
						
						
									
										247
									
								
								tools/release.sh
									
									
									
									
									
								
							@ -2,8 +2,11 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
set -e
 | 
					set -e
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					. release.functions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
XBIN=usr/xbin
 | 
					XBIN=usr/xbin
 | 
				
			||||||
SRC=src
 | 
					SRC=src
 | 
				
			||||||
 | 
					REPO=git://git.minix3.org/minix
 | 
				
			||||||
 | 
					
 | 
				
			||||||
PACKAGEDIR=/usr/pkgsrc/packages/`uname -r`/`uname -m`
 | 
					PACKAGEDIR=/usr/pkgsrc/packages/`uname -r`/`uname -m`
 | 
				
			||||||
# List of packages included on installation media
 | 
					# List of packages included on installation media
 | 
				
			||||||
@ -33,136 +36,6 @@ set -- $* $RELOPTS
 | 
				
			|||||||
# SVN trunk repo
 | 
					# SVN trunk repo
 | 
				
			||||||
TRUNK=https://gforge.cs.vu.nl/svn/minix/trunk
 | 
					TRUNK=https://gforge.cs.vu.nl/svn/minix/trunk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
make_hdimage()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	dd if=$TMPDISKUSR of=usrimage bs=$BS count=$USRBLOCKS
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	rootsize=`stat -size rootimage`
 | 
					 | 
				
			||||||
	usrsize=`stat -size usrimage`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	rootsects=`expr $rootsize / 512`
 | 
					 | 
				
			||||||
	usrsects=`expr $usrsize / 512`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	# installboot -m needs at least 1KB 
 | 
					 | 
				
			||||||
	dd < /dev/zero >tmpimage count=2
 | 
					 | 
				
			||||||
	partition -fm tmpimage 2 81:$rootsects* 0:0 81:$usrsects
 | 
					 | 
				
			||||||
	installboot -m tmpimage /usr/mdec/masterboot
 | 
					 | 
				
			||||||
	dd < tmpimage > subpart count=1
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	primsects=`expr 1 + $rootsects + $usrsects`
 | 
					 | 
				
			||||||
	cyl=`expr '(' $primsects ')' / $secs + 1`
 | 
					 | 
				
			||||||
	padsects=`expr $cyl \* $secs - 1 - $primsects`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	{ dd < /dev/zero count=1
 | 
					 | 
				
			||||||
		cat subpart
 | 
					 | 
				
			||||||
		cat rootimage
 | 
					 | 
				
			||||||
		cat usrimage
 | 
					 | 
				
			||||||
		dd < /dev/zero count=$padsects
 | 
					 | 
				
			||||||
	} > hdimage
 | 
					 | 
				
			||||||
	partition -m hdimage 81:`expr $primsects + $padsects`*
 | 
					 | 
				
			||||||
	installboot -m hdimage /usr/mdec/masterboot
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
retrieve()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	dir=$1
 | 
					 | 
				
			||||||
	list=`pwd`/$2
 | 
					 | 
				
			||||||
	url=${PACKAGEURL}
 | 
					 | 
				
			||||||
	(	
 | 
					 | 
				
			||||||
		cd $dir || exit 1
 | 
					 | 
				
			||||||
		echo  " * Updating $dir
 | 
					 | 
				
			||||||
   from $url
 | 
					 | 
				
			||||||
   with $list"
 | 
					 | 
				
			||||||
		files=`awk <$list '{ print "'$url'/" $1 ".tgz" }'`
 | 
					 | 
				
			||||||
		fetch -r $files || true
 | 
					 | 
				
			||||||
	)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
cd_root_changes()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	edparams $TMPDISKROOT 'unset bootopts;
 | 
					 | 
				
			||||||
unset servers;
 | 
					 | 
				
			||||||
unset rootdev;
 | 
					 | 
				
			||||||
unset leader;
 | 
					 | 
				
			||||||
unset image;
 | 
					 | 
				
			||||||
disable=inet;
 | 
					 | 
				
			||||||
bootcd=1;
 | 
					 | 
				
			||||||
cdproberoot=1;
 | 
					 | 
				
			||||||
ata_id_timeout=2;
 | 
					 | 
				
			||||||
bootbig(1, Regular MINIX 3) { unset image; boot }
 | 
					 | 
				
			||||||
leader() { echo \n--- Welcome to MINIX 3. This is the boot monitor. ---\n\nChoose an option from the menu or press ESC if you need to do anything special.\nOtherwise I will boot with my defaults in 10 seconds.\n\n }; main(){trap 10000 boot; menu; };
 | 
					 | 
				
			||||||
save' 
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
hdemu_root_changes()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	$RELEASEDIR/usr/bin/installboot -d $TMPDISKROOT \
 | 
					 | 
				
			||||||
		$RELEASEDIR/usr/mdec/bootblock boot/boot
 | 
					 | 
				
			||||||
	echo \
 | 
					 | 
				
			||||||
'bootcd=2
 | 
					 | 
				
			||||||
disable=inet
 | 
					 | 
				
			||||||
bios_wini=yes
 | 
					 | 
				
			||||||
bios_remap_first=1
 | 
					 | 
				
			||||||
ramimagedev=c0d7p0s0
 | 
					 | 
				
			||||||
bootbig(1, Regular MINIX 3) { image=/boot/image_big; boot }
 | 
					 | 
				
			||||||
main() { trap 10000 boot ; menu; }
 | 
					 | 
				
			||||||
save'	| $RELEASEDIR/usr/bin/edparams $TMPDISKROOT
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
usb_root_changes()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	$RELEASEDIR/usr/bin/installboot -d $TMPDISKROOT \
 | 
					 | 
				
			||||||
		$RELEASEDIR/usr/mdec/bootblock boot/boot
 | 
					 | 
				
			||||||
	echo \
 | 
					 | 
				
			||||||
'bios_wini=yes
 | 
					 | 
				
			||||||
bios_remap_first=1
 | 
					 | 
				
			||||||
rootdev=c0d7p0s0
 | 
					 | 
				
			||||||
bootbig(1, Regular MINIX 3) { image=/boot/image_big; boot }
 | 
					 | 
				
			||||||
leader() { echo \n--- Welcome to MINIX 3. This is the boot monitor. ---\n\nChoose an option from the menu or press ESC if you need to do anything special.\nOtherwise I will boot with my defaults in 10 seconds.\n\n }; main(){trap 10000 boot; menu; };
 | 
					 | 
				
			||||||
save'	| $RELEASEDIR/usr/bin/edparams $TMPDISKROOT
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
fitfs()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	path="$1"
 | 
					 | 
				
			||||||
	ramdisk="$2"
 | 
					 | 
				
			||||||
	extra_inodes="$3"
 | 
					 | 
				
			||||||
	extra_zones="$4"
 | 
					 | 
				
			||||||
	mbsdefault="$5"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	# Determine number of inodes
 | 
					 | 
				
			||||||
	inodes=`find $path | egrep -v ^$path/usr | wc -l`
 | 
					 | 
				
			||||||
	inodes="`expr $inodes + $extra_inodes`"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	# Determine number of data zones
 | 
					 | 
				
			||||||
	zonekbs=`du -Fs $path | cut -d'	' -f1`
 | 
					 | 
				
			||||||
	zonekbsignore=0
 | 
					 | 
				
			||||||
	[ ! -d $path/usr ] || zonekbsignore=`du -Fs $path/usr | cut -d"	" -f1`
 | 
					 | 
				
			||||||
	zones="`expr \( $zonekbs - $zonekbsignore \) / \( $BS / 1024 \) + $extra_zones`"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	# Determine file system size
 | 
					 | 
				
			||||||
	BSBITS="`expr $BS \* 8`"
 | 
					 | 
				
			||||||
	imap_blocks="`expr \( $inodes + $BSBITS - 1 \) / $BSBITS`"
 | 
					 | 
				
			||||||
	inode_blocks="`expr \( $inodes \* 64 + $BS - 1 \) / $BS`"
 | 
					 | 
				
			||||||
	zmap_blocks="`expr \( $zones + $BSBITS - 1 \) / $BSBITS`"
 | 
					 | 
				
			||||||
	blocks="`expr 1 + 1 + $imap_blocks + $zmap_blocks + $inode_blocks + $zones`"
 | 
					 | 
				
			||||||
	kbs="`expr $blocks \* \( $BS / 1024 \)`"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	# Apply default if higher
 | 
					 | 
				
			||||||
	if [ -n "$mbsdefault" ]
 | 
					 | 
				
			||||||
	then
 | 
					 | 
				
			||||||
		kbsdefault="`expr $mbsdefault \* 1024`"
 | 
					 | 
				
			||||||
		if [ "$kbs" -lt "$kbsdefault" ]
 | 
					 | 
				
			||||||
		then kbs=$kbsdefault
 | 
					 | 
				
			||||||
		else echo "warning: ${mbsdefault}mb is too small, using ${kbs}kb"
 | 
					 | 
				
			||||||
		fi
 | 
					 | 
				
			||||||
	fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	# Create a filesystem on the target ramdisk
 | 
					 | 
				
			||||||
	ramdisk $kbs $ramdisk
 | 
					 | 
				
			||||||
	mkfs.mfs -B $BS -i $inodes $ramdisk
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
RELEASEDIR=/usr/r-staging
 | 
					RELEASEDIR=/usr/r-staging
 | 
				
			||||||
RELEASEMNTDIR=/usr/r
 | 
					RELEASEMNTDIR=/usr/r
 | 
				
			||||||
RELEASEPACKAGE=${RELEASEDIR}/usr/install/packages
 | 
					RELEASEPACKAGE=${RELEASEDIR}/usr/install/packages
 | 
				
			||||||
@ -187,8 +60,7 @@ MAKEMAP=0
 | 
				
			|||||||
# Do we have git?
 | 
					# Do we have git?
 | 
				
			||||||
if git --version >/dev/null
 | 
					if git --version >/dev/null
 | 
				
			||||||
then	if [ -d ../.git ]
 | 
					then	if [ -d ../.git ]
 | 
				
			||||||
	then	REVTAG="`git describe --always`"
 | 
						then	LOCAL_REVTAG="`git describe --always`"
 | 
				
			||||||
		echo "git mode; building $REVTAG"
 | 
					 | 
				
			||||||
		GITMODE=1
 | 
							GITMODE=1
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
@ -236,6 +108,11 @@ do
 | 
				
			|||||||
	esac
 | 
						esac
 | 
				
			||||||
done
 | 
					done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ $GITMODE -ne 1 -a $COPY -ne 1 ]
 | 
				
			||||||
 | 
					then	echo "Need git to retrieve latest minix! Copying src instead!"
 | 
				
			||||||
 | 
						COPY=1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ ! "$ZIP" ]
 | 
					if [ ! "$ZIP" ]
 | 
				
			||||||
then	ZIP=bzip2
 | 
					then	ZIP=bzip2
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
@ -245,11 +122,6 @@ then	mkdir -p $PACKAGEDIR/All || true
 | 
				
			|||||||
	retrieve $PACKAGEDIR/All $PACKAGELIST packages/`uname -p`/`uname -r`
 | 
						retrieve $PACKAGEDIR/All $PACKAGELIST packages/`uname -p`/`uname -r`
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$COPY" -ne 1 ]
 | 
					 | 
				
			||||||
then
 | 
					 | 
				
			||||||
	echo "Note: this script wants to do svn operations."
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
TMPDISKUSR=/dev/ram0
 | 
					TMPDISKUSR=/dev/ram0
 | 
				
			||||||
TMPDISKROOT=/dev/ram1
 | 
					TMPDISKROOT=/dev/ram1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -291,108 +163,43 @@ cp -rp /usr/bin/make /usr/bin/install /usr/bin/yacc /usr/bin/lex /usr/bin/asmcon
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
CONFIGHEADER=$RELEASEDIR/usr/src/common/include/minix/sys_config.h
 | 
					CONFIGHEADER=$RELEASEDIR/usr/src/common/include/minix/sys_config.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ -d $PACKAGEDIR -a -f $PACKAGELIST -a $PACKAGES -ne 0 ]
 | 
					copy_local_packages
 | 
				
			||||||
then
 | 
					 | 
				
			||||||
	index=pkg_summary
 | 
					 | 
				
			||||||
	indexpath=$PACKAGEDIR/.index
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if [ ! -d $indexpath ]
 | 
					 | 
				
			||||||
	then	mkdir $indexpath
 | 
					 | 
				
			||||||
	fi
 | 
					 | 
				
			||||||
	if [ ! -d $indexpath ]
 | 
					 | 
				
			||||||
	then	echo "Couldn't create $indexpath."
 | 
					 | 
				
			||||||
		exit 1
 | 
					 | 
				
			||||||
	fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	echo "" >$PACKAGEDIR/All/$index
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        echo " * Transfering $PACKAGEDIR to $RELEASEPACKAGE"
 | 
					 | 
				
			||||||
        for p in `cat $PACKAGELIST`
 | 
					 | 
				
			||||||
        do	if [ -f $PACKAGEDIR/All/$p.tgz ]
 | 
					 | 
				
			||||||
               then
 | 
					 | 
				
			||||||
		  # Copy package and create package's index
 | 
					 | 
				
			||||||
		  (
 | 
					 | 
				
			||||||
		      cd $PACKAGEDIR/All
 | 
					 | 
				
			||||||
		      cp $p.tgz $RELEASEPACKAGE/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		      f=$p.tgz
 | 
					 | 
				
			||||||
		      indexname=$indexpath/$f.$index
 | 
					 | 
				
			||||||
		      pkg_info -X $f >$indexname
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		      if [ ! -f $indexname ]
 | 
					 | 
				
			||||||
		      then	echo Missing $indexname.
 | 
					 | 
				
			||||||
			  exit 1
 | 
					 | 
				
			||||||
		      fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		      if [ "`wc -l $indexname`" -lt 3 ]
 | 
					 | 
				
			||||||
		      then	$indexname is too short.
 | 
					 | 
				
			||||||
			  rm $indexname
 | 
					 | 
				
			||||||
			  exit 1
 | 
					 | 
				
			||||||
		      fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		      cat $indexname >>$PACKAGEDIR/All/$index
 | 
					 | 
				
			||||||
		  )
 | 
					 | 
				
			||||||
               else
 | 
					 | 
				
			||||||
                  echo "Can't copy $PACKAGEDIR/$p.tgz. Missing."
 | 
					 | 
				
			||||||
               fi
 | 
					 | 
				
			||||||
        done
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	bzip2 -f $PACKAGEDIR/All/$index
 | 
					 | 
				
			||||||
	cp $PACKAGEDIR/All/$index.bz2 $RELEASEPACKAGE/
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Make sure compilers and libraries are root-owned
 | 
					# Make sure compilers and libraries are root-owned
 | 
				
			||||||
chown -R root $RELEASEDIR/usr/lib
 | 
					chown -R root $RELEASEDIR/usr/lib
 | 
				
			||||||
chmod -R u+w $RELEASEDIR/usr/lib
 | 
					chmod -R u+w $RELEASEDIR/usr/lib
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$COPY" -ne 1 -a "$GITMODE" -ne 1 ]
 | 
					if [ "$COPY" -ne 1 ]
 | 
				
			||||||
then
 | 
					then
 | 
				
			||||||
	echo " * Doing new svn export"
 | 
						echo "Retrieving latest minix repo from $REPO."
 | 
				
			||||||
	TOOLSREPO="`svn info | grep '^URL: ' | awk '{ print $2 }'`"
 | 
						srcdir=$RELEASEDIR/usr/src
 | 
				
			||||||
	REPO="`echo $TOOLSREPO | sed 's/.tools$//'`"
 | 
						git clone $REPO $srcdir
 | 
				
			||||||
	BRANCHNAME="`echo $REPO | awk -F/ '{ print $NF }'`"
 | 
						if [ "$REVTAG" ]
 | 
				
			||||||
	REVISION="`svn info $USERNAME $SVNREV $REPO | grep '^Revision: ' | awk '{ print $2 }'`"
 | 
						then	echo "Doing checkout of $REVTAG."
 | 
				
			||||||
	echo "Doing export of revision $REVISION from $REPO."
 | 
							(cd $srcdir && git checkout $REVTAG )
 | 
				
			||||||
	( cd $RELEASEDIR/usr && svn -q $USERNAME export -r$REVISION $REPO $SRC )
 | 
						else	REVTAG=`(cd $srcdir && git show-ref HEAD -s10)`
 | 
				
			||||||
	if [ $BRANCHNAME = src ]
 | 
							echo "Retrieved repository head is $REVTAG."
 | 
				
			||||||
	then	REVTAG=r$REVISION
 | 
					 | 
				
			||||||
	else	REVTAG=branch-$BRANCHNAME-r$REVISION
 | 
					 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	
 | 
						rm -r $srcdir/.git
 | 
				
			||||||
	echo "
 | 
						echo "
 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Added by release script  */
 | 
					/* Added by release script  */
 | 
				
			||||||
#ifndef _VCS_REVISION
 | 
					#ifndef _VCS_REVISION
 | 
				
			||||||
#define _VCS_REVISION \"$REVTAG\"
 | 
					#define _VCS_REVISION \"$REVTAG\"
 | 
				
			||||||
#endif" >>$CONFIGHEADER
 | 
					#endif" >>$CONFIGHEADER
 | 
				
			||||||
 | 
						# output image name
 | 
				
			||||||
# output image name
 | 
						if [ "$USB" -ne 0 ]; then
 | 
				
			||||||
if [ "$USB" -ne 0 ]; then
 | 
							IMG=${IMG_BASE}_${REVTAG}.img
 | 
				
			||||||
	IMG=${IMG_BASE}_${REVTAG}.img
 | 
						else
 | 
				
			||||||
 | 
							IMG=${IMG_BASE}_${REVTAG}.iso
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
	IMG=${IMG_BASE}_${REVTAG}.iso
 | 
						echo "Copying contents from current src dir."
 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
elif [ "$COPY" -eq 1 ]
 | 
					 | 
				
			||||||
then
 | 
					 | 
				
			||||||
	( cd .. && make depend && make clean )
 | 
						( cd .. && make depend && make clean )
 | 
				
			||||||
	srcdir=/usr/$SRC
 | 
						srcdir=/usr/$SRC
 | 
				
			||||||
	( cd $srcdir && tar cf - . ) | ( cd $RELEASEDIR/usr && mkdir $SRC && cd $SRC && tar xf - )
 | 
						( cd $srcdir && tar cf - . ) | ( cd $RELEASEDIR/usr && mkdir $SRC && cd $SRC && tar xf - )
 | 
				
			||||||
	REVTAG=copy
 | 
						REVTAG=copy
 | 
				
			||||||
	REVISION=unknown
 | 
						REVISION=unknown
 | 
				
			||||||
	IMG=${IMG_BASE}_copy.iso
 | 
						IMG=${IMG_BASE}_copy.iso
 | 
				
			||||||
elif [ "$GITMODE" -eq 1 ]
 | 
					 | 
				
			||||||
then
 | 
					 | 
				
			||||||
	srcdir=$RELEASEDIR/usr/src
 | 
					 | 
				
			||||||
	git clone file://.. $srcdir
 | 
					 | 
				
			||||||
	( cd $srcdir && git checkout $REVTAG && rm -r .git )
 | 
					 | 
				
			||||||
	echo "
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Added by release script  */
 | 
					 | 
				
			||||||
#ifndef _VCS_REVISION
 | 
					 | 
				
			||||||
#define _VCS_REVISION \"$REVTAG\"
 | 
					 | 
				
			||||||
#endif" >>$CONFIGHEADER
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo " * Fixups for owners and modes of dirs and files"
 | 
					echo " * Fixups for owners and modes of dirs and files"
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user