diff options
Diffstat (limited to 'resources')
| -rwxr-xr-x | resources/scripts/modify/coreboot/configs | 75 | ||||
| -rwxr-xr-x | resources/scripts/modify/defconfig/options | 107 | ||||
| -rwxr-xr-x | resources/scripts/modify/seabios/configs | 56 | ||||
| -rwxr-xr-x | resources/scripts/modify/u-boot/configs | 77 | ||||
| -rwxr-xr-x | resources/scripts/update/coreboot/configs | 82 | ||||
| -rwxr-xr-x | resources/scripts/update/seabios/configs | 64 | ||||
| -rwxr-xr-x | resources/scripts/update/u-boot/configs | 83 | 
7 files changed, 107 insertions, 437 deletions
| diff --git a/resources/scripts/modify/coreboot/configs b/resources/scripts/modify/coreboot/configs deleted file mode 100755 index f6daa2f4..00000000 --- a/resources/scripts/modify/coreboot/configs +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/env sh - -#  helper script: modify coreboot configs (run make menuconfig) -# -#	Copyright (C) 2021, 2023 Leah Rowe <info@minifree.org> -#	Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> -# -#	This program is free software: you can redistribute it and/or modify -#	it under the terms of the GNU General Public License as published by -#	the Free Software Foundation, either version 3 of the License, or -#	(at your option) any later version. -# -#	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/>. -# - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -main() -{ -	printf "Modifying coreboot configs\n" - -	if [ $# -gt 0 ]; then -		for board in ${@}; do -			modifyconf "${board}" -		done -	else -		for board in resources/coreboot/*; do -			if [ ! -d "${board}" ]; then -				continue -			fi -			modifyconf "${board##*/}" -		done -	fi -} - -# Build ROM images for supported boards -modifyconf() { -	board="$1" - -	if [ ! -f "resources/coreboot/${board}/target.cfg" ]; then -		printf "\nmodify/config/coreboot: no target.cfg for: %s\n" \ -				"${board}" -	fi - -	tree="" -	. "resources/coreboot/${board}/target.cfg" # source - -	if [ -z ${tree} ]; then -		return 0 -	fi -	cbdir="coreboot/${tree}" -	if [ ! -d "${cbdir}" ]; then -		./fetch_trees coreboot ${tree} -	fi - -	for cbcfg in resources/coreboot/${board}/config/*; do -		if [ ! -f ${cbcfg} ]; then -			continue -		fi -		make distclean -BC "${cbdir}" -		mv "${cbcfg}" "${cbdir}/.config" -		make menuconfig -BC "${cbdir}" -		mv "${cbdir}/.config" "${cbcfg}" -		make distclean -BC "${cbdir}" -	done -} - -main $@ diff --git a/resources/scripts/modify/defconfig/options b/resources/scripts/modify/defconfig/options new file mode 100755 index 00000000..2f5c2f61 --- /dev/null +++ b/resources/scripts/modify/defconfig/options @@ -0,0 +1,107 @@ +#!/usr/bin/env sh + +# +#  helper script: update project configs (based on defconfig) +# +#	Copyright (C) 2021, 2023 Leah Rowe <info@minifree.org> +#	Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> +# +#	This program is free software: you can redistribute it and/or modify +#	it under the terms of the GNU General Public License as published by +#	the Free Software Foundation, either version 3 of the License, or +#	(at your option) any later version. +# +#	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/>. +# + +[ "x${DEBUG+set}" = 'xset' ] && set -v +set -u -e + +cfgsdir="" +mode="" +project="" + +main() +{ +	while getopts m:u: option +	do +		case "${1}" in +		-u) +			mode="oldconfig" +			shift ;; +		-m) +			mode="menuconfig" +			shift ;; +		*) +			err "Invalid option" ;; +		esac +		project="${OPTARG}" +		shift +	done +	[ -z "${mode}" ] && err "mode not given (-m menuconfig or -u oldconfig)" +	cfgsdir="resources/${project}" +	[ -f "${cfgsdir}/build.list" ] || err "Invalid project name given" + +	printf "Updating %s configs using: make %s\n\n" "${project}" "${mode}" + +	if [ $# -gt 0 ]; then +		for target in "${@}"; do +			configure_target "${target}" +		done +	else +		for target in ${cfgsdir}/*; do +			[ ! -d "${target}" ] && continue +			configure_target "${target##*/}" +		done +	fi +} + +configure_target() +{ +	target=${1} + +	targetdir="${cfgsdir}/${target}" + +	if [ ! -f "${targetdir}/target.cfg" ]; then +		printf "\nmodify/defconfig %s: no target.cfg for %s. SKIP!\n" \ +			"${project}" "${target}" +		return 0 +	fi + +	tree="undefined" +	. "${targetdir}/target.cfg" +	[ "${tree}" = "undefined" ] && return 0 + +	codedir="${project}/${tree}" +	[ -d "${codedir}" ] || ./fetch_trees ${project} ${tree} || \ +	    err "cant download $project" + +	for cfg in "${targetdir}/config/"*; do +		[ ! -f "${cfg}" ] && continue +		make distclean -BC "${codedir}" + +		[ -f "${cfg}_" ] && err "${cfg}_ exists from old run" +		cp "${cfg}" "${cfg}_" + +		cp "${cfg}_" "${codedir}/.config" +		make ${mode} -BC "${codedir}" +		mv "${codedir}/.config" "${cfg}" + +		make distclean -BC "${codedir}" +		rm -f "${cfg}_" +	done +} + +err() +{ +	printf "ERROR: modify/defconfig: %s\n" "${1}" 1>&2 +	exit 1 +} + +main $@ diff --git a/resources/scripts/modify/seabios/configs b/resources/scripts/modify/seabios/configs deleted file mode 100755 index b07dfff8..00000000 --- a/resources/scripts/modify/seabios/configs +++ /dev/null @@ -1,56 +0,0 @@ -#!/usr/bin/env sh - -#  helper script: modify coreboot configs (run make menuconfig) -# -#	Copyright (C) 2021, 2023 Leah Rowe <info@minifree.org> -# -#	This program is free software: you can redistribute it and/or modify -#	it under the terms of the GNU General Public License as published by -#	the Free Software Foundation, either version 3 of the License, or -#	(at your option) any later version. -# -#	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/>. - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -main() -{ -	printf "Updating seabios configs\n" -	download_seabios -	modify_configs -} - -download_seabios() -{ -	if [ ! -d "seabios" ]; then -		./fetch_trees seabios -	fi -	if [ ! -d "seabios" ]; then -		printf "error: Failed to download SeaBIOS. " -		printf "Check internet connection?\n" -		exit 1 -	fi -} - -modify_configs() -{ -	for config in resources/seabios/config/*; do -		if [ ! -f "${config}" ]; then -			continue -		fi -		make distclean -BC seabios -		mv "${config}" seabios/.config -		make menuconfig -BC seabios -		cp seabios/.config "${config}" -		make distclean -BC seabios -	done -} - -main $@ diff --git a/resources/scripts/modify/u-boot/configs b/resources/scripts/modify/u-boot/configs deleted file mode 100755 index 4e16f353..00000000 --- a/resources/scripts/modify/u-boot/configs +++ /dev/null @@ -1,77 +0,0 @@ -#!/usr/bin/env sh - -#  helper script: modify U-Boot configs (run make menuconfig) -# -#	Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> -#	Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> -#	Copyright (C) 2023 Leah Rowe <info@minifree.org> -# -#	This program is free software: you can redistribute it and/or modify -#	it under the terms of the GNU General Public License as published by -#	the Free Software Foundation, either version 3 of the License, or -#	(at your option) any later version. -# -#	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/>. - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -main() -{ -	printf "Modifying U-Boot configs\n" - -	if [ $# -gt 0 ]; then -		for board in "${@}"; do -			modifyconf "${board}" -		done -	else -		for board in resources/u-boot/*; do -			if [ ! -d "${board}" ]; then -				continue -			fi -			modifyconf "${board##*/}" -		done -	fi -} - -# Build ROM images for supported boards -modifyconf() -{ -	board="$1" -	if [ ! -f "resources/u-boot/${board}/target.cfg" ]; then -		printf "\nmodify/config/u-boot: no target.cfg for: %s\n" \ -				"${board}" -		return 0 -	fi - -	tree="undefined" -	. "resources/u-boot/${board}/target.cfg" # source - -	if [ "${tree}" = "undefined" ]; then -		return 0 -	fi -	ubdir="u-boot/${tree}" - -	if [ ! -d "${ubdir}" ]; then -		./fetch_trees u-boot ${tree} -	fi - -	for ubcfg in resources/u-boot/${board}/config/*; do -		if [ ! -f ${ubcfg} ]; then -			continue -		fi -		make distclean -BC "${ubdir}" -		mv "${ubcfg}" "${ubdir}/.config" -		make menuconfig -BC "${ubdir}" -		mv "${ubdir}/.config" "${ubcfg}" -		make distclean -BC "${ubdir}" -	done -} - -main $@ diff --git a/resources/scripts/update/coreboot/configs b/resources/scripts/update/coreboot/configs deleted file mode 100755 index c17a21bb..00000000 --- a/resources/scripts/update/coreboot/configs +++ /dev/null @@ -1,82 +0,0 @@ -#!/usr/bin/env sh - -# -#  helper script: update coreboot configs (run make oldconfig) -# -#	Copyright (C) 2021 Leah Rowe <info@minifree.org> -#	Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> -# -#	This program is free software: you can redistribute it and/or modify -#	it under the terms of the GNU General Public License as published by -#	the Free Software Foundation, either version 3 of the License, or -#	(at your option) any later version. -# -#	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/>. -# - -# This script assumes that the working directory is the root -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -cbcfgsdir="resources/coreboot" - -main() -{ -	printf "Updating coreboot configs\n" - -	if [ $# -gt 0 ]; then -		for board in "${@}"; do -			updateconf "${board}" -		done -	else -		for board in ${cbcfgsdir}/*; do -		if [ ! -d "${board}" ]; then -			continue -		fi -			updateconf "${board##*/}" -		done -	fi -} - -# Build ROM images for supported boards -updateconf() -{ -	board=${1} - -	boarddir="${cbcfgsdir}/${board}" - -	if [ -f "${boarddir}/target.cfg" ]; then -		tree="undefined" -		. "${boarddir}/target.cfg" # source -		if [ "${tree}" = "undefined" ]; then -			return 0 -		fi -		cbdir="coreboot/${tree}" -		if [ ! -d "${cbdir}" ]; then -			./fetch_trees coreboot ${tree} -		fi -		for cbcfg in "${boarddir}/config/"*; do -			if [ ! -f "${cbcfg}" ]; then -				continue -			fi -			make distclean -BC "${cbdir}" -			mv $cbcfg ${cbdir}/.config -			make oldconfig -BC "${cbdir}" -			mv ${cbdir}/.config $cbcfg -			make distclean -BC "${cbdir}" -		done -	else -		printf "\nupdate/config/coreboot: no target.cfg for: %s\n" \ -				${board} -	fi -} - -main $@ diff --git a/resources/scripts/update/seabios/configs b/resources/scripts/update/seabios/configs deleted file mode 100755 index 91002502..00000000 --- a/resources/scripts/update/seabios/configs +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env sh - -# -#  helper script: update coreboot configs (run make oldconfig) -# -#	Copyright (C) 2021 Leah Rowe <info@minifree.org> -# -#	This program is free software: you can redistribute it and/or modify -#	it under the terms of the GNU General Public License as published by -#	the Free Software Foundation, either version 3 of the License, or -#	(at your option) any later version. -# -#	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/>. -# - -# This script assumes that the working directory is the root -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -printf "Updating seabios configs\n" - -if [ ! -d "seabios" ]; then -	./fetch_trees seabios -fi - -if [ ! -d "seabios" ]; then -	printf "error: Failed to download SeaBIOS. check internet connection?\n" -	exit 1 -fi - -for config in resources/seabios/config/*; do - -	if [ ! -f "${config}" ]; then continue; fi - -	( -		cd seabios -		make distclean -	) - -	mv "${config}" seabios/.config -	( -		cd seabios -		make oldconfig -	) - -	cp seabios/.config "${config}" - -	( -		cd seabios -		make distclean -	) - -done - -printf "\n\n" - diff --git a/resources/scripts/update/u-boot/configs b/resources/scripts/update/u-boot/configs deleted file mode 100755 index 4dbb05bc..00000000 --- a/resources/scripts/update/u-boot/configs +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env sh - -# -#  helper script: update U-Boot configs (run make oldconfig) -# -#	Copyright (C) 2022 Alper Nebi Yasak <alpernebiyasak@gmail.com> -#	Copyright (C) 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> -# -#    This program is free software: you can redistribute it and/or modify -#    it under the terms of the GNU General Public License as published by -#    the Free Software Foundation, either version 3 of the License, or -#    (at your option) any later version. -# -#    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/>. -# - -# This script assumes that the working directory is the root -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -printf "Updating U-Boot configs\n" - -# Build ROM images for supported boards -updateconf() { -	board="$1" -	if [ -f "resources/u-boot/${board}/target.cfg" ]; then -        tree="undefined" -        . "resources/u-boot/${board}/target.cfg" # source -        if [ "${tree}" = "undefined" ]; then -            return 0 -        fi -        if [ ! -d "u-boot/${tree}" ]; then -            ./fetch_trees u-boot ${tree} -        fi -        for ubcfg in resources/u-boot/${board}/config/*; do -            if [ ! -f ${ubcfg} ]; then -                continue -            fi -            ( -                cd u-boot/${tree}/ -                rm -f .config* -                make distclean -            ) -            mv $ubcfg u-boot/${tree}/.config -            ( -                cd u-boot/${tree}/ -                make oldconfig -            ) -            mv u-boot/${tree}/.config $ubcfg -            rm -f u-boot/${tree}/.config* -            ( -                cd u-boot/${tree}/ -                make distclean -            ) -        done -    else -        printf "\nupdate/config/u-boot: no target.cfg for: %s\n" "${board}" -    fi -} - -if [ $# -gt 0 ]; then -	for board in "${@}"; do -	    updateconf "${board}" -	done -else -	for board in resources/u-boot/*; do -        if [ ! -d "${board}" ]; then -            continue -        fi -	    updateconf "${board##*/}" -	done -fi - -printf "\n\n" - | 
