mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	add buildroot script
This commit is contained in:
		
							parent
							
								
									23b743206a
								
							
						
					
					
						commit
						ec5423f8d6
					
				
							
								
								
									
										80
									
								
								linux/buildroot-scripts/start-buildroot-session.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										80
									
								
								linux/buildroot-scripts/start-buildroot-session.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,80 @@
 | 
				
			|||||||
 | 
					script_dir=$(readlink -f ./)
 | 
				
			||||||
 | 
					personal_config=$(readlink -f ../buildroot-config-src)
 | 
				
			||||||
 | 
					shared_config=$RISCV/buildroot-config-src
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -d "$shared_config" ]; then
 | 
				
			||||||
 | 
					    echo "Hold the horses, friend!" >&2
 | 
				
			||||||
 | 
					    echo "There is already a buildroot-config-src folder in \$RISCV" >&2
 | 
				
			||||||
 | 
					    if [ ! -f "$shared_config/.owner" ]; then
 | 
				
			||||||
 | 
					        echo "Oy vey -- it was improperly created too!" >&2
 | 
				
			||||||
 | 
					        echo "I see no .owner file in it!" >&2
 | 
				
			||||||
 | 
					        echo "Maybe just delete it." >&2
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					    owner=$(cat $shared_config/.owner)
 | 
				
			||||||
 | 
					    echo "It was created by $owner." >&2
 | 
				
			||||||
 | 
					    echo "Please contact them before overwriting their source files." >&2
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					echo "Starting new buildroot session"
 | 
				
			||||||
 | 
					# Copy configs to shared location
 | 
				
			||||||
 | 
					echo "Elevate permissions to copy ../buildroot-config-src to \$RISCV"
 | 
				
			||||||
 | 
					sudo cp -r "$personal_config" "$shared_config"
 | 
				
			||||||
 | 
					sudo chown -R cad $shared_config
 | 
				
			||||||
 | 
					# Document who created these configs
 | 
				
			||||||
 | 
					whoami>.owner
 | 
				
			||||||
 | 
					sudo mv .owner $shared_config
 | 
				
			||||||
 | 
					# Copy over main.config
 | 
				
			||||||
 | 
					echo "Copying main.config to buildroot/.config."
 | 
				
			||||||
 | 
					sudo cp $shared_config/main.config $RISCV/buildroot/.config
 | 
				
			||||||
 | 
					sudo chown cad $RISCV/buildroot/.config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo "=============================================="
 | 
				
			||||||
 | 
					echo "I'm about to sign you in as cad."
 | 
				
			||||||
 | 
					echo ""
 | 
				
			||||||
 | 
					echo "You can go straight to the \$RISCV/buildroot"
 | 
				
			||||||
 | 
					echo "and run \`make\` if you want."
 | 
				
			||||||
 | 
					echo ""
 | 
				
			||||||
 | 
					echo "You can also run:"
 | 
				
			||||||
 | 
					echo "  * \`make menu-config\`"
 | 
				
			||||||
 | 
					echo "  * \`make linux-menuconfig\`"
 | 
				
			||||||
 | 
					echo "  * \`make busybox-menuconfig\`"
 | 
				
			||||||
 | 
					echo "but if you do, you have to make extra certain" 
 | 
				
			||||||
 | 
					echo "that you LOAD and SAVE configs from/to "
 | 
				
			||||||
 | 
					echo "\$RISCV/buildroot-config-src."
 | 
				
			||||||
 | 
					echo ""
 | 
				
			||||||
 | 
					echo "Run \`exit\` to sign out when you are done."
 | 
				
			||||||
 | 
					echo "And then any configs that were modified in"
 | 
				
			||||||
 | 
					echo "\$RISCV/buildroot-config-src will be copied"
 | 
				
			||||||
 | 
					echo "back to ../buildroot-config-src."
 | 
				
			||||||
 | 
					echo "=============================================="
 | 
				
			||||||
 | 
					read -p "Press any key to sign in as cad" -n1 -s
 | 
				
			||||||
 | 
					echo ""
 | 
				
			||||||
 | 
					cd $RISCV
 | 
				
			||||||
 | 
					sudo su cad
 | 
				
			||||||
 | 
					cd $script_dir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo ""
 | 
				
			||||||
 | 
					echo "Ending buildroot session"
 | 
				
			||||||
 | 
					if [ ! -d "$shared_config" ]; then
 | 
				
			||||||
 | 
					    echo "Warning: $shared_config has already been deleted."
 | 
				
			||||||
 | 
					    exit 0
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if [ ! -f "$shared_config/.owner" ]; then
 | 
				
			||||||
 | 
					    echo "Oy vey -- no .owner file found.">&2
 | 
				
			||||||
 | 
					    echo "Not sure whether to delete $shared_config.">&2
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					owner=$(cat "$shared_config"/.owner)
 | 
				
			||||||
 | 
					if [ $owner != $(whoami) ]; then
 | 
				
			||||||
 | 
					    echo "Whoah there! It seems $owner created $shared_config.">&2
 | 
				
			||||||
 | 
					    echo "Ask them before deleting their work.">&2
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					echo "Copying modified configs from \$RISCV/buildroot-config-src back to ../buildroot-config-src."
 | 
				
			||||||
 | 
					for file in $personal_config/*; do
 | 
				
			||||||
 | 
					    file=$(basename $file)
 | 
				
			||||||
 | 
					    cp $shared_config/$file $personal_config/$file
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
 | 
					echo "Elevate permissions to remove personal configs from shared location."
 | 
				
			||||||
 | 
					sudo rm -r $shared_config
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user